Preface_specs.Indexed_functorAn Indexed Functor represents a type that can be mapped over (with an index, so an additional type parameter that can be useful for tracking information using row polymorphism). So we can go from ('a, 'index) t to ('b, 'index) t using a function from 'a to 'b. Mapping preserve the structure of the input.
module type WITH_MAP = sig ... endThe minimum definition of an Indexed Functor. It is by using the combinators of this module that the other combinators will be derived.
module type CORE = WITH_MAPBasis operations.
module type OPERATION = sig ... endAdditional operations.
module type INFIX = sig ... endInfix operators.
module type SYNTAX = sig ... endSyntax operators.
module type API = sig ... endThe complete interface of a Functor.