
20 Dec
2004
20 Dec
'04
11:19 a.m.
Ross Paterson wrote:
But IO is not ST RealWorld (even if GHC pretends it is): other users of the world are not waiting for the new world produced by your Haskell program.
They're *part* of the world. IO = State RealWorld makes sense if you think of RealWorld as encapsulating the entire state of the universe, including "other users". The only trouble is that concurrent processes end up containing each other. I'm not entirely convinced that this can't be solved with some sort of fixed-point trick. -- Ben