Parameter Core_over_category_and_via_arrow_and_fst.Req

type ('a, 'b) t = ('a, 'b) Category.t

The type held by the Arrow.

val arrow : ('a -> 'b) -> ('a, 'b) t

Lift a function to an 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.