Open treeowl opened 3 years ago
This isn't strictly backwards compatible because MonadFree f m
now requires that either:
f
is a Functor
, orf
does not need to be a Functor
to implement liftF
.These hold for all the implementations in the package. I don't know if they fail somewhere else.
Hmm... That's a bit weird... the instance for Control.Monad.Free.Free
actually didn't previously need a Functor f
constraint, but it had one anyway.
Another option is to use a different name for the method, to preserve performance characteristics.
This seems to work a bit better for things like
FT
.