<p dir="ltr">I like this idea, but I'm not exactly clear on the mechanics. Will mappend move to Semigroup, or <>, or will we get more redundant operations?</p>
<div class="gmail_quote">On Mar 29, 2015 11:04 AM, "Herbert Valerio Riedel" <<a href="mailto:hvr@gnu.org">hvr@gnu.org</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 2015-03-29 at 14:20:33 +0200, Jeremy wrote:<br>
> Now that 7.10 is out, I would like to re-propose. The proposed plan is<br>
> similar to AMP, but less invasive, as (in my subjective experience)<br>
> user-defined Monoids are much less common than user-defined Monads.<br>
><br>
> 1. GHC 7.12 will include Semigroup and NonEmpty in base. All Monoid<br>
> instances, and anything else which forms a Semigroup, will have a Semigroup<br>
> instance. GHC will issue a warning when it encounters an instance of Monoid<br>
> which is not an instance of Semigroup.<br>
><br>
> 2. GHC >7.12 will define Monoid as a subclass of Semigroup.<br>
<br>
+1<br>
_______________________________________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org">Libraries@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
</blockquote></div>