<div>Obviously `mappend` is good enough as it is.</div><div><br></div><div>Choosing (+&gt;) or (&lt;&gt;) are just for prettifying code.</div><div><br></div><div>Generalizing (++) not only makes the code prettier, but also brings Monoid into the Prelude.</div>

<div><br></div><div>You can either Do It Right(tm), or be conservative and try to maintain backwards compatibility as much as possible.</div><div><br></div><div>I suspect most people in the community understand the trade-offs here, and would agree on the proper solution. If that means rewriting the standard, then so be it.</div>

<div><br><br><div class="gmail_quote">On Wed, Jul 1, 2009 at 12:26 PM, Ross Paterson <span dir="ltr">&lt;<a href="mailto:ross@soi.city.ac.uk">ross@soi.city.ac.uk</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div class="im">On Wed, Jul 01, 2009 at 10:55:39AM -0700, Bryan O&#39;Sullivan wrote:<br>
&gt; Okay, here&#39;s a tentative plan that will help to figure out the answer. I&#39;ll<br>
&gt; build a fiddled base package that rewires the Monoid class to have (++) be the<br>
&gt; binary operator, and mappend as a synonym for it. I&#39;ll import the Monoid (++)<br>
&gt; into the Prelude. I&#39;ll see how much breaks. If that much builds smoothly, I&#39;ll<br>
&gt; see how much of the rest of Hackage builds, both with and without this custom<br>
&gt; base package. I&#39;ll follow up here with the results, along with a suggestion of<br>
&gt; how acceptable I think the observed level of breakage is.<br>
<br>
</div>Generalizing (++) will break some Haskell 98 code, e.g.<br>
<br>
  append = (++)<br>
<br>
I think that&#39;s a show-stopper.<br>
<div><div></div><div class="h5">_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
</div></div></blockquote></div><br></div>