[Haskell-cafe] IO is not a monad

Seth Gordon sethg at ropine.com
Thu Feb 8 09:42:05 EST 2007

Aaron McDaid wrote:
> Could seq be changed so that it will not give an error if it finds
> undefined? Am I right in thinking that seq is supposed to
> theoretically do nothing, but simply give a hint to the compiler so to
> speak? If that is true, it should merely attempt to evaluate it, but
> ignore it if it cannot evaluate it.

⊥ represents any unsuccessful computation, not just the exception that a
Haskell implementation throws when it evaluates "undefined".

In particular, a program that does not terminate at all can be described
as returning ⊥.

More information about the Haskell-Cafe mailing list