Tomasz Zielonka schrieb:
On Fri, Dec 22, 2006 at 06:16:03PM +0100, Joachim Durchholz wrote:
* Forcing the expressions that get written out means that I cannot use
lazy evaluation freely. In particular, if some library code returns a
data structure that contains a lazy-infinite subexpression,
Joachim Durchholz wrote:
I'll move on to the alternatives - Alice ML and/or Clean. Both can
serialize without forcing lazy subexpressions.
I don't know about Clean, but with respect to Alice ML this is not
correct: Alice ML uniformly blocks on futures upon pickling, including
lazy ones.
Hi
(There's still no good introduction to Monads, for example. One that's
understandable for a programmer who knows his Dijkstra well but no
category theory. And a few other things.)
I grasped this one first time round:
http://haskell.org/haskellwiki/Monads_as_containers
No category theory.
[EMAIL PROTECTED] schrieb:
Joachim Durchholz wrote:
I'll move on to the alternatives - Alice ML and/or Clean. Both can
serialize without forcing lazy subexpressions.
I don't know about Clean, but with respect to Alice ML this is not
correct: Alice ML uniformly blocks on futures upon
Joachim Durchholz wrote:
To adhere to uniformity, strong abstraction, and the Principle of
Least Surprise, we thus chose to force lazy futures in Alice ML.
Well, I wouldn't have expected that pickling has an effect (other than
wrapping the value up for transfer), so at least I would have
Neil Mitchell schrieb:
Hi
(There's still no good introduction to Monads, for example. One that's
understandable for a programmer who knows his Dijkstra well but no
category theory. And a few other things.)
I grasped this one first time round:
On Fri, Dec 22, 2006 at 06:16:03PM +0100, Joachim Durchholz wrote:
* Forcing the expressions that get written out means that I cannot use
lazy evaluation freely. In particular, if some library code returns a
data structure that contains a lazy-infinite subexpression, serializing
it would
OK, just to let everybody know why I'm dropping Haskell.
Basically, the reasoning is this:
* I want to write a process that doesn't terminate.
* Since the environment can and will enforce termination occasionally,
the process must be able to write its state to some external storage
(serialize