Proposal #3339: Add (+>) as a synonym for mappend
ekmett at gmail.com
Sat Jul 18 09:23:53 EDT 2009
On Sat, Jul 18, 2009 at 6:14 AM, Conor McBride
<conor at strictlypositive.org>wrote:
> Until that joyous day, I'd like to hope we might consider ensuring
> that MonadPlus m, Alternative m, and Monoid (m a) functionalities
> do at least coincide.
> I'm thinking in particular of Maybe, which behaves splendidly as
> an implementation of an exception monad, until you start using
> foldMap as a control operator.
Yeah, the Monoid instance for Maybe is somewhat unfortunate.
I can see where they were going as Maybe does provide the natural extension
of a semigroup into a monoid by adding a unit element, but it doesn't have a
Semigroup class to build on, and so has to require Monoid and in the end you
get a definition that conflicts with the MonadPlus/Alternative instances for
Maybe, and only really helps if you have broken Monoid instances around that
are secretly just Semigroups.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Libraries