
24 Nov
2004
24 Nov
'04
7:02 a.m.
Benjamin Franksen
stdin = makeHandle 0 stdout = makeHandle 1 stderr = makeHandle 2
in absolutely pure Haskell, only the things that manipulate them need be in the IO monad.
If they were simple wrappers around the integers, you'd be right and I couldn't rightfully object to them being top-level values.
They generally have buffers. And stdin remembers when it has been closed and refuses to be read further. -- __("< Marcin Kowalczyk \__/ qrczak@knm.org.pl ^^ http://qrnik.knm.org.pl/~qrczak/