<div dir="ltr"><div>I believe this is the App newtype in the monoids package [0].<br><br></div>Erik<br><br>[0] <a href="https://hackage.haskell.org/package/monoids-0.3.2/docs/Data-Monoid-Applicative.html#t:App" target="_blank">https://hackage.haskell.org/<wbr>package/monoids-0.3.2/docs/<wbr>Data-Monoid-Applicative.html#<wbr>t:App</a><br><div class="gmail_extra"><br><div class="gmail_quote">On 5 September 2016 at 20:54, Brian Hurt <span dir="ltr"><<a href="mailto:bhurt@spnz.org" target="_blank">bhurt@spnz.org</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"><br><div>This may be a stupid question, but I'm wondering why the following instance isn't in prelude:</div><div><br></div><div>instance (Applicative m, Monoid a) => Monoid (m a) where</div><div>    mempty = pure mempty</div><div>    mappend a b = mappend <$> a <*> b</div><div><br></div><div>?<br><br>I ask, because being able to use a WriterT (IO ()) STM a to debug complex STM expressions would be really nice.  But it depends upon IO () being a monoid.<span><font color="#888888"><br></font></span></div><span><font color="#888888"><div><br></div><div>Brian</div><div><br></div></font></span></div>
<br>______________________________<wbr>_________________<br>
Haskell-Cafe mailing list<br>
To (un)subscribe, modify options or view archives go to:<br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bi<wbr>n/mailman/listinfo/haskell-caf<wbr>e</a><br>
Only members subscribed via the mailman list are allowed to post.<br></blockquote></div><br></div></div>