Generalize MAC to MACT to use any underlying monad

Declined
#1 · Created  · Last updated

Declined pull request

Nice code, but I will leave it simple without transformers.

Closed by: ·2019-08-29

Description

This makes MACT a monad transformer. It's very similar to the identity monad transformer. It's actually exactly the same, except that MACT has the phantom type l.

In keeping with the spirit of the style in mtl I have put the underlying monad as the second-to-last type parameter of MACT. Also in keeping with the style of mtl I have made MAC l a a type-synonym for

MAC l Identity a

So not with IO as the underlying monad. I believe this is the only sensible choice, but I'm willing to let myself be convinced to the contrary.

0 attachments

0 comments

Loading commits...