On Mon, Dec 20, 2004 at 02:16:52PM +0000, Keean Schupke wrote: > But is that beacuse it really isn't (theoretically) possible, or just > not possible > to write in Haskell (because it would involve new primitives)? > > Surely if IO is (ST RealWorld a) then (StateT RealWorld m a) is more or > less the > right thing?
Sure, you only need to implement one primitive - world duplication ;) Consider m = []: Prelude Control.Monad.State> runStateT (do x <- lift [1,2,3]; put x) 0 [((),1),((),2),((),3)] Prelude Control.Monad.State> runIOT (do x <- lift [1,2,3]; print x) 0 hmmm? Best regards, Tomasz _______________________________________________ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
