On Sat, 2009-01-24 at 03:08 -0700, Luke Palmer wrote: > On Sat, Jan 24, 2009 at 2:40 AM, Ryan Ingram <ryani.s...@gmail.com> > wrote: > On Fri, Jan 23, 2009 at 10:49 PM, Thomas Davie > <tom.da...@gmail.com> wrote: > > Isn't the point of bottom that it's the least defined > value. Someone above > > made the assertion that for left identity to hold, _|_ > `mappend` () must be > > _|_. But, as there is only one value in the Unit type, all > values we have > > no information about must surely be that value, so this is > akin to saying () > > `mappend` () must be (), which our definition gives us. > > > But _|_ is not (). > > Correction: _|_ is not always ().
For example: in Haskell. Prelude> () `seq` True True Prelude> (undefined `asTypeOf` ()) `seq` True *** Exception: Prelude.undefined jcc _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe