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))))