[Haskell-cafe] Re: ``Orphan instances'' should be avoided anyway.
Henning Thielemann
lemming at henning-thielemann.de
Wed Aug 13 09:51:56 EDT 2008
On Wed, 13 Aug 2008, Yitzchak Gale wrote:
> Why is it that when I say
>
> import Control.Monad.Error (throwError, runErrorT)
>
> there is no way to prevent also getting a surprising Monad Either
> instance? Never mind how things should have been named
> in Control.Monad.Error - that's the way it is right now. I need to
> be able to import the module without getting the instance.
Indeed, the instances that are imported without request contradict to the
module concept. In case of Control.Monad.Error I suggest to give
http://darcs.haskell.org/explicit-exception/src/Control/Monad/Exception/Synchronous.hs
a try. I'm working on it as counter-proposal to the extensible extension
proposal. This module defines exceptions without abusing the Either type.
More information about the Haskell-Cafe
mailing list