[Haskell-cafe] IO is not a monad (and seq, and in general _|_)

Neil Mitchell ndmitchell at gmail.com
Tue Jan 23 15:50:27 EST 2007


> > prove/compute anything you couldn't before. While removing _|_ from
> > the language does make some things nicer to reason about, there aren't
> > many corners where _|_ really gets in the way that much - seq being
> > one of those few corners.
> But that is exactly the problem:  `seq` forces _|_ to get into the
> way, when it normally doesn't.  So I'm not clear that trying to fit
> `seq` into a formalization of Haskell's semantics is the way to go.

Agreed, that was the point I was trying to make :)

You seemed to be suggesting _|_ was "evil" (for want of a more precise
term) in its behaviour with Haskell. As you seem to say now (and I
agree), _|_ is a perfectly useful value, just seq gets in the way.



More information about the Haskell-Cafe mailing list