[Haskell-cafe] mtlx has a nice design but is slow

Sean Leather leather at cs.uu.nl
Wed Apr 6 19:13:21 CEST 2011


I just refactored my type and transform system prototype (introduced in [1]
but changed since then) from using mtlx [2] (type-indexed monad transformers
described in [3]) to mtl using RWST. mtlx allowed me to cleanly separate the
various monadic components in a convenient way. Unfortunately, I found it to
be too slow. The refactoring was an experiment to see how slow. I was rather
surprised:

Running time of a compiled main with a list of tests:
  mtlx (7 transformers): 2 min 52 sec
  mtl (RWST): 0 min 13 sec

It's frustrating to see such a huge performance gap for a better design.

Regards,
Sean

[1]
http://splonderzoek.blogspot.com/2011/03/draft-type-changing-program-improvement.html
[2] http://hackage.haskell.org/package/mtlx
[3] http://www.ittc.ku.edu/~marks/cgi-bin/pubs/monadfactory.pdf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20110406/526aa762/attachment.htm>


More information about the Haskell-Cafe mailing list