
kahl@cas.mcmaster.ca wrote:
6) I haven't been able to pinpoint it in the Haddock docs, but somehow Control.Monad.State re-exports Control.Monad, which invalidates my explicit Control.Monad imports whenever I import Control.Monad.State full and unqualified
Many of the mtl modules do this, and I also find it irksome since it means having a list of imports which all duplicate the same "hiding (foo,bar,blatz)" annotation. Explicitly importing just the desired functions mitigates this, but it's still a bad API choice.
After all, I can use monads perferctly fine from the Prelude, but have to
import Control.Monad (liftM)
all the time anyway...
While we're on the topic ;) it'd be *really* nice if the Haskell' Prelude exported MonadPlus along with the Monad stuff (or H' equivalents). -- Live well, ~wren