Arrow_zero.WITH_ARROW_AND_FST
Minimal definition using arrow, fst and neutral.
arrow
fst
neutral
type ('a, 'b) t
The type held by the Arrow_zero.
Arrow_zero
val neutral : ('a, 'b) t
The neutral element of the Arrow_zero.
val arrow : ('a -> 'b) -> ('a, 'b) t
Lift a function to an Arrow.
Arrow
val fst : ('a, 'b) t -> ('a * 'd, 'b * 'd) t
Send the first component of the input through the argument Arrow, and copy the rest unchanged to the output.