different flavours of Monad Transformer Library (fwd)

Antoine Latter aslatter at gmail.com
Wed Jan 7 15:28:08 EST 2009


On Wed, Jan 7, 2009 at 11:23 AM, Mauro J. Jaskelioff <mjj at cs.nott.ac.uk> wrote:
> Hi, sorry for the late reply,
>
> I also like Ross' idea of monads being synonyms for transformers at Id.
> It removes lots of repeated code.
>

There's a cost to that technique.

Parsec3 introduced parsec as a monad transformer, and the parsec base
monad is implemented as the transformer wrapped around the identity
monad.

There's a significant speed regression to doing so - I have a branch
of Parsec3 which re-introduces a proper base monad and shares (some)
code via typeclasses.  This puts us back at Parsec2 numbers.

I don't have any hard data on hand at the moment, it's been a while.

-Antoine


More information about the Libraries mailing list