Preface_specs.Arrow_altAn Arrow with a combine function. So Arrow_alt is also an Arrow. Arrow_alt is a kind of Alt in the arrow hierarchy.
To have a predictable behaviour, the instance of Arrow_alt must obey some laws.
Arrow lawscombine (combine a b) c = combine a (combine b c)module type WITH_COMBINE = sig ... endExposes the combine function, mandatory for each requirement.
module type WITH_ARROW_AND_FST = sig ... endMinimal definition using arrow, fst and combine.
module type WITH_ARROW_AND_SPLIT = sig ... endMinimal definition using arrow, split and combine.
module type CORE = sig ... endBasis operations.
module type OPERATION = sig ... endAdditional operations.
module type ALIAS = Arrow.ALIASAliases of some operations functions.
module type INFIX = sig ... endInfix operators.
module type API = sig ... endThe complete interface of an Arrow_alt.