The Eff monad is an alternative to monad transformers. It is implemented as a library in https://github.com/atnos-org/eff-cats and https://github.com/atnos-org/eff-scalaz
3. It must be evident how multifarious
and how mutually complicated are
the considerations which the working
of such an engine involve. There are
frequently several distinct sets of
effects going on simultaneously; all
in a manner independent of each
other, and yet to a greater or less
degree exercising a mutual influence.
Ada Lovelace,
1842