Module type Applicative_intf.Basic
val map : [ `Define_using_apply | `Custom of 'a t -> f:('a -> 'b) -> 'b t ]
The
map
argument toApplicative.Make
says how to implement the applicative'smap
function.`Define_using_apply
means to definemap t ~f = return f <*> t
.`Custom
overrides the default implementation, presumably with something more efficient.Some other functions returned by
Applicative.Make
are defined in terms ofmap
, so passing in a more efficientmap
will improve their efficiency as well.