cvs commit: fptools/libraries/base/System IO.hs

Ross Paterson ross at soi.city.ac.uk
Wed Apr 21 11:01:17 EDT 2004


On Tue, Apr 20, 2004 at 08:52:19AM -0700, Simon Marlow wrote:
> simonmar    2004/04/20 08:52:19 PDT
> 
>   Modified files:
>     libraries/base/System IO.hs 
>   Log:
>   New version of fixIO which does eager blackholing.

Is that different from the version Hugs uses:

	fixIO :: (a -> IO a) -> IO a
	fixIO f = do
	    ref <- newIORef (throw NonTermination)
	    result <- f (unsafePerformIO (readIORef ref))
	    writeIORef ref result
	    return result

and is unsafeInterleaveIO different from return . unsafePerformIO?


More information about the Cvs-libraries mailing list