pipe と fork+exec で外部プロセス起動

fork+exec を利用して、外部プロセス起動をできるようになった。起動したプロセスの標準出力などを置き換えることが可能。
以下の例では ls -la を起動して、その標準出力を pipe 経由で読み込んでいる。

(receive (in out) (%pipe)
  (let1 pid (%fork)
    (if (zero? pid)
        (%exec "ls" '("-la") #f out #f))
    (begin
      (%waitpid pid)
      (print (get-line (transcoded-port in (make-transcoder (utf-8-codec)))))
      (print 'done))))

これらは低レベル API なので、より簡便な上位 API を用意する予定。