[Haskell-cafe] Mixing mtl- and transformers-using libraries

Ivan Lazar Miljenovic ivan.miljenovic at gmail.com
Thu May 6 08:42:48 EDT 2010


Joachim Breitner <mail at joachim-breitner.de> writes:
> I have a rather large project here that uses standard mtl stuff. This
> program now wants to use salvia, which in turn uses the transformers
> library. The result is this:
>
> X.hs:163:29:
>     Overlapping instances for Monad (Either String)
>       arising from a use of `neuePersonCommit' at X.hs:163:29-48
>     Matching instances:
>       instance (transformers-0.1.4.0:Control.Monad.Trans.Error.Error e) =>
>                Monad (Either e)
>         -- Defined in transformers-0.1.4.0:Control.Monad.Trans.Error
>       instance (Control.Monad.Error.Class.Error e) => Monad (Either e)
>         -- Defined in Control.Monad.Error
>
> Is there any way of using salvia without having ghc consider instances
> from transformers?

Switch to using transformers yourself (I believe it's API compatible
with mtl)?

-- 
Ivan Lazar Miljenovic
Ivan.Miljenovic at gmail.com
IvanMiljenovic.wordpress.com


More information about the Haskell-Cafe mailing list