On 6/25/11 2:15 PM, Erik Hesselink wrote: > On Sat, Jun 25, 2011 at 19:07, Evan Laforge<[email protected]> wrote: >> On Sat, Jun 25, 2011 at 9:00 AM, Jens Blanck<[email protected]> wrote: >>>>> So there's a range of possible Monoid instances for each type, >>>> >>>> More for some types than for others. For Maybe there are three: >>>> >>>> * always take the first/left value; >>>> * always take the last/right value; >>>> * or, use a semigroup operation defined on the values. > > Brent Yorgey recently blogged about a fourth instance [1] which also > uses the semigroup operation on the values, but treats Nothing as > failure, returning Nothing. > > Erik > > [1] https://byorgey.wordpress.com/2011/04/18/monoids-for-maybe/
Ah, yes. I forgot about that one. Though technically that one actually requires a monoid, not just a semigroup, since mempty = Just mempty. Which furthers the point that most types have an abundance of monoid instances. -- Live well, ~wren _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
