Module type Freer_selective.TO_MONOID

The natural transformation for Freer Selective to Monoid.

type 'a t

The type held by the Freer selective.

type 'a f

The parametric type (which, unlike a Preface_specs.Free_selective don't need to be a Preface_specs.Functor).

type monoid

The type held by the Monoid.

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

Run the natural transformation over the Freer selective.