ekmett/either — pull request #3 by ppetr (2013-01-22 09:16:43+00:00)
Title: Added `MonadError` instance.

> This requires a dependency on *mtl*.
> Defined `left`, `right` and `hoistEither` in terms of `MonadError`.

Inspired by [this SO question](http://stackoverflow.com/q/14428756/1333025), I realized that `MonadError` is the type class corresponding to `EitherT`. I wonder, why is the instance commented out? Is there a problem with the dependency on *mtl*? With this simple modification, it's possible to use `EitherT` inside a monad stack through `MonadError`.