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@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@ocharles.org.uk> wrote:
> David Feuer <david.feuer@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@haskell.org
> http://www.haskell.org/mailman/listinfo/libraries