cvs commit: hugs98/libraries/Hugs IOExts.hs hugs98/src iomonad.c machdep.c machdep.h hugs98/tests/libs prodcon.output

ross at glass.cse.ogi.edu ross at glass.cse.ogi.edu
Wed Jan 14 06:19:12 EST 2004


ross        2004/01/14 06:19:12 PST

  Modified files:
    libraries/Hugs       IOExts.hs 
    src                  iomonad.c machdep.c machdep.h 
    tests/libs           prodcon.output 
  Log:
  Change the handling of stdin (except on Win32).
  
  Hugs used to treat standard input quite strangely: turning off echo and
  buffering (if a terminal), with getChar echoing input chars on stdout
  (which makes no sense if either stdin or stdout is redirected) though
  hGetChar stdin and interact didn't.
  
  With this change, stdin is left alone, and there are new primitives:
  hIsTerminalDevice, hGetEcho and hSetEcho.  One can use hSetBuffering
  and hSetEcho to change the modes of any handle connected to a terminal.
  The Hugs-only non-echoing getCh is gone.
  
  I've left Win32 alone (look for RAW_CONSOLE) because I don't know what's
  going on there, but I think the new behaviour would be more convenient.
  
  Revision  Changes    Path
  1.17      +9 -4      hugs98/libraries/Hugs/IOExts.hs
  1.70      +78 -20    hugs98/src/iomonad.c
  1.113     +111 -37   hugs98/src/machdep.c
  1.9       +11 -1     hugs98/src/machdep.h
  1.6       +1 -1      hugs98/tests/libs/prodcon.output


More information about the Cvs-hugs mailing list