Proposal: Add Alternative adapter to Data.Monoid

Edward Kmett ekmett at gmail.com
Fri Oct 31 16:47:20 UTC 2014


The one change I'd offer is this:

instance Alternative f => Monoid (Alt f a) where
  mempty = Alt empty
*  mappend = coerce ((<|>) :: f a -> f a -> f a)*

That way it doesn't eta-expand (<|>).

-Edward


On Fri, Oct 31, 2014 at 12:35 PM, Carl Howells <chowells79 at gmail.com> wrote:

> Oh right.  This is what I joined this list to propose in the first
> place, then forgot about.  Uh, do I get a vote? If I have one, I'm
> obviously +1 on the idea.
>
> On Thu, Oct 30, 2014 at 10:54 AM, Oliver Charles <ollie at ocharles.org.uk>
> wrote:
> > David Feuer <david.feuer at gmail.com> writes:
> >
> >> I found myself needing this type in my current overhaul of
> Data.Foldable,
> >> but it seems to be generally useful:
> >
> > +1, I can see myself wanting to reach for this.
> >
> > -- ocharles
> > _______________________________________________
> > Libraries mailing list
> > Libraries at haskell.org
> > http://www.haskell.org/mailman/listinfo/libraries
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/libraries/attachments/20141031/96260556/attachment.html>


More information about the Libraries mailing list