package base
-
base
-
-
base.base_internalhash_types
-
base.caml
-
base.md5
-
base.shadow_stdlib
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
val return : 'a -> 'a t
The following identities ought to hold for every Applicative (for some value of =):
- identity:
return Fn.id <*> t = t
- composition:
return Fn.compose <*> tf <*> tg <*> tx = tf <*> (tg <*> tx)
- homomorphism:
return f <*> return x = return (f x)
- interchange:
tf <*> return x = return (fun f -> f x) <*> tf
Note: <*> is the infix notation for apply.
The map
argument to Applicative.Make
says how to implement the applicative's map
function. `Define_using_apply
means to define map 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 of map
, so passing in a more efficient map
will improve their efficiency as well.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>