On May 10, 2020, at 19:55, Viktor Dukhovni <ietf-dane@dukhovni.org> wrote:

I should probably mention that the reason I'm having to jump through these
hoops with boilerplate code is that neither "mtl", nor "transformers" provide
"MonadReader", "MonadWriter", "MonadState" or just "MonadRWS" instances for
RWS.CPS,

The instances are already present on master (I added them) but they have not yet been released to Hackage. Remarkably, mtl seems to be without a maintainer. See https://github.com/haskell/mtl/issues/69.

Alexis