
Antoine Latter wrote:
Michael Snoyman wrote:
Is there any reason to export only MonadIO? MonadTrans seems like a good candidate for that split as well.
I guess I've never need the 'lift' function outside of code which used other bits of the mtl, so I did not export it.
I'm struggling to come up with a concept which would unify a package containing both the MonadIO class and the MonadTrans class. The mtl made sense, as it contained shed-loads of other classes.
Maybe it'd be worth just rolling into base, instead of a separate package? Both MonadTrans and MonadIO seem as basic to me as MonadPlus. And I don't recall there ever being controversy about the design of either class. (Moving them to base may mess up folks using new base + old mtl ...but that seems fixable by forcing old+old or new+new.) -- Live well, ~wren