Threading monads

Jon Cast jcast@ou.edu
Thu, 10 Apr 2003 15:31:57 -0500


Jan-Willem Maessen <jmaessen@MIT.EDU> wrote:

> Actually, though the operations of most monads constrain evaluation
> order, an interesting property of the identity monad is that it should
> not do so.  This observation has led me to think long and hard about
> the distinction between monadic and non-monadic computations in
> Haskell (admittedly to no real conclusion).

Why would you do this?  I don't see what conclusion you could come to
that would involving discarding the ID monad, so you'd still need to
distinguish between different monads.  OTOH, the do-notation or other
monadic notations don't really add much to the ID monad.  So, a
non-monadic syntax would still be desirable for this very common special
case.  So, what could you possibly think would change?

Jon Cast