On Jan 27, 2010, at 4:57 PM, Conor McBride wrote:

Yes, the separation is not clear in Haskell. (I consider this unfortunate.) I was thinking of Paul Levy's call-by-push-value calculus, where the distinction is clear, but perhaps not as fluid as one might like.

What, exactly, is the supposed difference between a value and a computation? Please remember that computations can and very often do "return" computations as results. Please remember that in order for a function to be computed for a value, binding and computation must occur. And that for every value computed, a computation must occur, even if it is "just" under identity the identity function.

Let's not forget that there's a monad for every one-argument (id est, monadic) function, and vice-versa.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to