Via.Coreval neutral : ('a, 'b) tThe neutral element of the Arrow_zero.
include Preface_specs.Category.WITH_ID with type ('a, 'b) t := ('a, 'b) tval id : ('a, 'a) tThe identity morphism.
Send the first component of the input through the argument Arrow, and copy the rest unchanged to the output.
val arrow : ('a -> 'b) -> ('a, 'b) tLift a function to an Arrow.