On Tue, Dec 04, 2007 at 03:07:01PM -0800, Ryan Ingram wrote: > Is there a reason why strictness is defined as > > f _|_ = _|_ > > instead of, for example, > > forall x :: Exception. f (throw x) = throw x There's discussion along these lines in http://hackage.haskell.org/trac/ghc/ticket/1171 Thanks Ian