Module type Free_monad.TO_MONAD

The natural transformation for Free Monad to Monad.

type 'a t

The type held by the Free monad.

type 'a f

The type held by the Preface_specs.Functor.

type 'a monad

The type held by the Monad.

type natural_transformation = {
  1. transform : 'a. 'a f -> 'a monad;
}
val run : natural_transformation -> 'a t -> 'a monad

Run the natural transformation over the Free monad.