Peter Verswyvelen writes about non-monadic IO, unique "external worlds":
But... isn't this what the Haskell compiler & runtime do internally when
IO monads are executed? Passing the RealWorld "singleton" from "action" to
"action"?
I never looked into any Haskell compiler. Chalmers, or York, don't remember,
used continuations, this seems a bit different from the Clean approach, but
I don't really know the gory details.
To me, no real
difference exists between IO monads and Clean's uniques types; it's just a
different approach to tackle the same problem.
Yes, *different approach*. So, there *are* differences. Compilers, anyway,
are special applications. I wanted to see - responding to Brandon - a
"normal" Haskell program, which does IO without monads, that't all.
The problem is then when you hide something, you hide. It is possible to
superpose a kind of monadic framework on unique worlds, files, etc. in
Clean, but the reverse operation goes beyond my horizons.
Some examples, anybody?
Jerzy Karczmarczuk
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe