Control.Monad.Trans.Free.Church
data FT f m a
type F f
free
runF
improveT
toFT
fromFT
iterT
iterTM
hoistFT
transFT
joinFT
cutoff
improve
fromF
toF
retract
retractT
iter
iterM
class MonadFree f m
liftF