
30 Jun
2010
30 Jun
'10
6:41 p.m.
On Wed, Jun 30, 2010 at 05:46:27PM -0400, Edward Kmett wrote:
With that change, the mtl is no longer defining instances for any types it doesn't own!
Not quite -- there are still two orphans: instance MonadPlus IO instance (Error e) => MonadPlus (Either e)
In that vein it makes sense that the basic error type used by transformer-centric should ALSO be a type alias wrapped around ErrorT, rather than an abuse of a prelude type.
Indeed, and the ideal name for the type alias would be ...? I'm starting to think it would be best for transformers to start over on this monad, say with a new unconstrained ExceptT/Except, beside ErrorT.