Parameter Infix.Core

type ('a, 'index) t

The type held by the Indexed Apply.

val map : ('a -> 'b) -> ('a, 'index) t -> ('b, 'index) t

Mapping over t from 'a to 'b.

val apply : ('a -> 'b, 'index) t -> ('a, 'index) t -> ('b, 'index) t

May apply a function wrapped into an t to a value also wrapped into an t.

val product : ('a, 'index) t -> ('b, 'index) t -> ('a * 'b, 'index) t

Monoidal product between two t.

val lift2 : ('a -> 'b -> 'c) -> ('a, 'index) t -> ('b, 'index) t -> ('c, 'index) t

Lift a binary function that acts on arbitrary values into a function that acts t values.