<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body>
Look at e.g. the Monoid instance for Text. Without “mconcat =
concat” it would be much slower.<br>
<br>
<div class="moz-cite-prefix">On 09/01/2015 01:39 PM, Fumiaki
Kinoshita wrote:<br>
</div>
<blockquote
cite="mid:CAATCwUnU=AHfdoGWNR6SLCRP4oniYxkpQi7swgKwow-O=GSMNA@mail.gmail.com"
type="cite">
<div dir="ltr">-1
<div><br>
</div>
<div>I would rather propose removing mconcat from Monoid. I've
never seen mconcat defined.</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">2015-09-01 17:04 GMT+09:00 Edward Kmett
<span dir="ltr"><<a moz-do-not-send="true"
href="mailto:ekmett@gmail.com" target="_blank">ekmett@gmail.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">To be clear I was referring to the
generalization of mconcat, not to Petr's Dual suggestion
<div><br>
</div>
<div>That said, I have a very strong issue with the
proposed change to Dual's mconcat. The issue with the
Dual suggestion is that reverse requires the list to be
finite. This means that even if the monoid could be
productive before with Dual it can't with that
definition.</div>
<span class="HOEnZb"><font color="#888888">
<div><br>
</div>
<div>-Edward</div>
<div><br>
</div>
<div><br>
</div>
</font></span></div>
<div class="HOEnZb">
<div class="h5">
<div class="gmail_extra"><br>
<div class="gmail_quote">On Tue, Sep 1, 2015 at 12:56
AM, Edward Kmett <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:ekmett@gmail.com" target="_blank">ekmett@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">I'm personally -1 from a base
organizational standpoint following Reid's
reasoning.
<div><br>
</div>
<div>This is just me expressing my own personal
opinion rather than any official core
libraries committee stance at this time.<span><font
color="#888888">
<div><br>
</div>
<div>-Edward</div>
</font></span></div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">
<div>
<div>On Mon, Aug 31, 2015 at 1:19 PM, Petr
Pudlák <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:petr.mvd@gmail.com"
target="_blank">petr.mvd@gmail.com</a>></span>
wrote:<br>
</div>
</div>
<blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px
#ccc solid;padding-left:1ex">
<div>
<div>
<div dir="ltr"><br>
<div class="gmail_extra"><br>
<div class="gmail_quote"><span>2015-08-31
21:00 GMT+02:00 David Feuer <span
dir="ltr"><<a
moz-do-not-send="true"
href="mailto:david.feuer@gmail.com"
target="_blank">david.feuer@gmail.com</a>></span>:<br>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<p dir="ltr">The theory of
mconcat is that it should
handle monoids that need to
be summed in some special
way. I don't know if anyone
actually uses it so,
however. Still, Reid is
right that the circular
dependency sets a very high
bar.</p>
<div class="gmail_quote">
<div>
<div><br>
</div>
</div>
</div>
</blockquote>
</span>
<div>I guess the [a] monoid is a
good example where using mconcat
can make a difference.</div>
<div><br>
</div>
<div>What seems to be an omission
is that Dual has no
implementation of mconcat. It'd
make sense to define 'mconcat =
mconcat . reverse' - if the
original monoid benefits from a
certain order of operations, we
should keep the order.</div>
</div>
</div>
</div>
<br>
</div>
</div>
<span>_______________________________________________<br>
Libraries mailing list<br>
<a moz-do-not-send="true"
href="mailto:Libraries@haskell.org"
target="_blank">Libraries@haskell.org</a><br>
<a moz-do-not-send="true"
href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries"
rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
<br>
</span></blockquote>
</div>
<br>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
<br>
_______________________________________________<br>
Libraries mailing list<br>
<a moz-do-not-send="true"
href="mailto:Libraries@haskell.org">Libraries@haskell.org</a><br>
<a moz-do-not-send="true"
href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries"
rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
<br>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Libraries mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Libraries@haskell.org">Libraries@haskell.org</a>
<a class="moz-txt-link-freetext" href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a>
</pre>
</blockquote>
<br>
</body>
</html>