<div dir="ltr"><div>It is important to have execution traces in case of error. specially in server applications that run 24/7 such are web applications</div><div><br clear="all">Thanks to the wonderful package monadloc by Pepe Iborra, now MFlow can generate a complete execution trace in case of error. </div>

<div> </div><div>The control-monad-exception uses monadLoc to generate stack traces, but MFlow makes use of his backtracking mechanism to generate a complete execution trace.</div><div> </div><div>Here I explain what and how:</div>

<div> </div><div><a href="http://haskell-web.blogspot.com.es/2013/07/automatic-error-trace-generation-in.html">http://haskell-web.blogspot.com.es/2013/07/automatic-error-trace-generation-in.html</a></div><div> </div><div>

The MFlow version that implements this is in gitHub. Not in hackage yet.</div><div> </div><div><a href="https://github.com/agocorona/MFlow">https://github.com/agocorona/MFlow</a> </div><div> </div><div><div>I´m quite proud of it since it is one of the things closest to magic that I have done.  </div>

<div> </div><div>Feedback?</div><div> </div><div>I do not want to keep MFlow as a single person development. I think that it has many unique and nice features not available in other languages and frameworks, and it can be raised to a serious exploitation level by the Haskell community. This will attract people working in Industrial Web development to Haskell thanks to the edge in expressiveness and safety necessary for creating industrial solutions that Haskell has over other languages.</div>

<div> </div><div>It uses most other Haskell web developments  blaze, wai, hamlet etc and there are many other things to come. </div></div><div> </div><div>monadLoc : <a href="http://hackage.haskell.org/package/monadloc">http://hackage.haskell.org/package/monadloc</a></div>

<div><br>-- <br>Alberto.
</div></div>