
Well, Haskell defines the IO type to be abstract, so if IO and ST happen to
be the same it's implementation dependent.
-- Lennart
On 7/11/07, Bulat Ziganshin
Hello Andrew,
Tuesday, July 10, 2007, 11:49:37 PM, you wrote:
...so the 's' doesn't really "exist", it's just random hackery of the type system to implement uniqueness?
Exactly.
Hmm. Like the IO monad's RealWorld object, which isn't really there?
ST and IO monads are the same beast. in ST, s is free to allow to create endless amount of independent threads while in IO it fixed to one type and describes evolution of one thread, synchronized with real world. look at http://haskell.org/haskellwiki/IO_inside for info about IO monad trickery
-- Best regards, Bulat mailto:Bulat.Ziganshin@gmail.com
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe