Eager IO function
Wed, 13 Feb 2002 10:08:21 +0000
> How should I modify the function below so that characters are printed
> out as they arrive?
> printchar :: Handle -> IO ()
> printchar handle = do c <- hGetChar handle
> putChar c
hSetBuffering handle NoBuffering
hSetBuffering stdout NoBuffering
from the IO library, before you call printchar. If the input handle
is attached to a terminal, you may also need to adjust the terminal
emulation into `cbreak' mode, e.g. with
System.system "stty cbreak"
Don't forget to reset the terminal afterwards!