Here's something for the Scheme side of things:

(define (make-pipe . args)
    (let ((transcoder (if (pair? args)
                          (car args)
                          #f)))
      (let ((fd (posix-pipe)))
        (vector (fh->input-port (vector-ref fd 0)
                                "pipe-in"
                                32
                                transcoder
                                #f
                                'make-pipe)
                (fh->output-port (vector-ref fd 1)
                                 "pipe-out"
                                 32
                                 transcoder
                                 #f
                                 'pipe)))))

I'm not sure what to pass for the 'size' parameter.

Ed

Reply via email to