<div dir="ltr">There is a free monad benchmark: <div><br><div><a href="https://rawgit.com/feuerbach/freemonad-benchmark/master/results.html">https://rawgit.com/feuerbach/freemonad-benchmark/master/results.html</a><br></div><div><br></div><div>Not very good for the free monads. But it is done only with a single transformer and for a single state. I don´t know how the MTL performance degrades when the transformer stack grows.</div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-10-15 15:49 GMT+02:00 Joachim Breitner <span dir="ltr"><<a href="mailto:mail@joachim-breitner.de" target="_blank">mail@joachim-breitner.de</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<span class=""><br>
Am Freitag, den 14.10.2016, 17:35 +0200 schrieb Damian Nadales:<br>
> Do you have<br>
> any experience using any of these approaches. If so would you mind<br>
> sharing? ;)<br>
<br>
</span>I don’t have an answer to contribute, but I would be very interested in<br>
hearing about experiences in terms of their relative runtime<br>
performance.<br>
<br>
My gut feeling is that an an indirect function call for every (>>=),<br>
with many calls to `lift` each time, would make a deep monad<br>
transformer stack much more expensive. A free monad approach seems to<br>
be more sensible to me. But maybe GHC is doing a better job optimizing<br>
this than I would think?<br>
<br>
So if you have any number-supported evidence about this, possibly from<br>
a real-world application where you tried to use one or the other,<br>
please share it with us!<br>
<br>
Thanks,<br>
Joachim<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Joachim “nomeata” Breitner<br>
  <a href="mailto:mail@joachim-breitner.de">mail@joachim-breitner.de</a> • <a href="https://www.joachim-breitner.de/" rel="noreferrer" target="_blank">https://www.joachim-breitner.<wbr>de/</a><br>
  XMPP: <a href="mailto:nomeata@joachim-breitner.de">nomeata@joachim-breitner.de</a> • OpenPGP-Key: 0xF0FBF51F<br>
  Debian Developer: <a href="mailto:nomeata@debian.org">nomeata@debian.org</a></font></span><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-<wbr>bin/mailman/listinfo/haskell-<wbr>cafe</a><br>
Only members subscribed via the mailman list are allowed to post.<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">Alberto.</div>
</div>