Tomasz wrote:
> Without unsafePerformIO Haskell gives me many guarantees for free.
> With unsafePerformIO, they are no longer for free, I have to think, prove,
> etc. When I mistakenly give a pure function interface to an unpure
> "function", it can affect my program in most unexpected places.

I think with the functions implemented by my proposal and without 
unsafePerformIO
you can have all the guarantees, but still have global variables.  In particular
you can implement most of John Meacham's examples (the Random module), 
Data.Unique,
and Caching.
_______________________________________________
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell

Reply via email to