
Yes but, for instance, every library which provides monad transformers will
provides a MTL's MonadTrans instance, not a monadLib's MonadT instance.
And since a library hides its types internals, you cannot write the MonadT
instances yourself.
For instance, I was planning to translate a little program of mine (which
uses quite heavily monad transformers) to monadLib. It uses the packages
operational which is based on MTL, and I cannot make myself operational's
transformers instances of MonadT.
How would you solve that?
(btw, I like the fact that monadLib provides IdT ^^ (IdentityT))
2010/7/6 Ertugrul Soeylemez
Yves Parès
wrote: monadLib looks nice, indeed, but the major problem with using it resides in the fact that most of the libraries on hackage use MTL. Must be tedious to have to use two monad libraries at the same time...
In general this is a minor problem. Note that when using a monad from another library usually you get provided with a type alias (or even a newtype) and a number of convenience functions, so you don't have to access names from both libraries at the same time.
I can only speak for myself, but I've never had a problem with this, even though my packages often have lots and lots of dependencies.
Greets, Ertugrul
-- nightmare = unsafePerformIO (getWrongWife >>= sex) http://ertes.de/
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe