First question is "how comes reading a fifo isn't blocking?"
% cd /tmp % mkfifo fifo % cat > test.scm (let ((fifo-port (open-input-file "/tmp/fifo"))) (pretty-print (read fifo-port)) (close-port fifo-port))
% gsi test.scm #!eof % echo "hello" > fifo& [1] 70455 % gsi test.scm [1] + done echo "hello" > fifo hello
Second question is "Why do I often have a 'device not configured' error with code like the one above?" (Bug not reproduced here, but often happens when I try to read or open where nothing is currently being written yet.)
Finally, I would like to know whether we could have a procedure WITH-ERROR-TO-FILE to redirect the error port too.
Regards,
Adrien