[Haskell-cafe] Much faster complex monad stack based on CPS state

Bas van Dijk v.dijk.bas at gmail.com
Wed Sep 28 12:56:54 CEST 2011


On 27 September 2011 01:07, Nicu Ionita <nicu.ionita at acons.at> wrote:
> I wonder why the transformers library does not use this kind of state monad
> definition.

One disadvantage of ContT and I guess any CPS based monad transformer
is that they interact badly with exception handling functions like
catch.

See [1] for a bug that was caused because of using catch in ContT:

Because of this reason I don't provide a MonadTransControl instance
for ContT in monad-control[2].

Regards,

Bas

[1] http://thread.gmane.org/gmane.comp.lang.haskell.cafe/76262/
[2] http://hackage.haskell.org/package/monad-control



More information about the Haskell-Cafe mailing list