Module Base.ApplicativeSource
Applicative operations. An applicative abstracts the notion of computations whose results can be combined. An 'a t represents a computation returning 'a.
Applicative operations for applicatives with two type parameters.
Applicative operations for applicatives with one type parameter.
Infix operators. This module type subsumes the other Index* types below.
Infix operators for applicatives with two type parameters.
Infix operators for applicatives with one type parameter.
Complete applicative interface. Extends _kernel with infix operators.
Supports let%map syntax. See ppx_let documentation.
Supports let%map syntax for applicatives with two type parameters.
Supports let%map syntax for applicatives with one type parameter.
Lazy_applicative is an applicative whose structure may be computed on-demand, instead of being constructed up-front. This is useful when implementing traversals over large data structures, where otherwise we have to pay O(n) up-front cost both in time and in memory.
Argument to Make_let_syntax3.
Argument to Make_let_syntax2.
Argument to Make_let_syntax.
Argument to Make3_using_map2.
Argument to Make_using_map2.
Argument to Make2_using_map2.
Module types below provide both global and local versions. In OxCaml, the latter accept local ~f closures.
Both local and portable versions are designed with a strict data structure in mind. The types won't make sense for Applicatives whose evaluation is delayed (e.g. most monads, Command.Param, or anything like a database query applicative).
Applicative operations. An applicative abstracts the notion of computations whose results can be combined. An 'a t represents a computation returning 'a.
Applicative operations for applicatives with two type parameters.
Applicative operations for applicatives with one type parameter.
Infix operators. This module type subsumes the other Index* types below.
Infix operators for applicatives with two type parameters.
Infix operators for applicatives with one type parameter.
Complete applicative interface. Extends _kernel with infix operators.
Complete applicative interface with two type parameters.
Complete applicative interface with one type parameter.
Supports let%map syntax. See ppx_let documentation.
Supports let%map syntax for applicatives with two type parameters.
Supports let%map syntax for applicatives with one type parameter.
Lazy_applicative is an applicative whose structure may be computed on-demand, instead of being constructed up-front. This is useful when implementing traversals over large data structures, where otherwise we have to pay O(n) up-front cost both in time and in memory.
Argument to Make_let_syntax3.
Argument to Make_let_syntax2.
Argument to Make_let_syntax.
Argument to Make3_using_map2.
Argument to Make_using_map2.
Argument to Make2_using_map2.
Module types below provide both global and local versions. In OxCaml, the latter accept local ~f closures.
Both local and portable versions are designed with a strict data structure in mind. The types won't make sense for Applicatives whose evaluation is delayed (e.g. most monads, Command.Param, or anything like a database query applicative).
Applicative operations. An applicative abstracts the notion of computations whose results can be combined. An 'a t represents a computation returning 'a.
Applicative operations for applicatives with two type parameters.
Applicative operations for applicatives with one type parameter.
Infix operators. This module type subsumes the other Index* types below.
Infix operators for applicatives with two type parameters.
Infix operators for applicatives with one type parameter.
Complete applicative interface. Extends _kernel with infix operators.
Supports let%map syntax. See ppx_let documentation.
Supports let%map syntax for applicatives with two type parameters.
Supports let%map syntax for applicatives with one type parameter.
Lazy_applicative is an applicative whose structure may be computed on-demand, instead of being constructed up-front. This is useful when implementing traversals over large data structures, where otherwise we have to pay O(n) up-front cost both in time and in memory.
Argument to Make_let_syntax3.
Argument to Make_let_syntax2.
Argument to Make_let_syntax.
Argument to Make3_using_map2.
Argument to Make_using_map2.
Argument to Make2_using_map2.
Module types below provide both global and local versions. In OxCaml, the latter accept local ~f closures.
Both local and portable versions are designed with a strict data structure in mind. The types won't make sense for Applicatives whose evaluation is delayed (e.g. most monads, Command.Param, or anything like a database query applicative).
Applicative operations. An applicative abstracts the notion of computations whose results can be combined. An 'a t represents a computation returning 'a.
Applicative operations for applicatives with two type parameters.
Applicative operations for applicatives with one type parameter.
Infix operators. This module type subsumes the other Index* types below.
Infix operators for applicatives with two type parameters.
Infix operators for applicatives with one type parameter.
Complete applicative interface. Extends _kernel with infix operators.
Complete applicative interface with two type parameters.
Complete applicative interface with one type parameter.
Supports let%map syntax. See ppx_let documentation.
Supports let%map syntax for applicatives with two type parameters.
Supports let%map syntax for applicatives with one type parameter.
Lazy_applicative is an applicative whose structure may be computed on-demand, instead of being constructed up-front. This is useful when implementing traversals over large data structures, where otherwise we have to pay O(n) up-front cost both in time and in memory.
Argument to Make_let_syntax3.
Argument to Make_let_syntax2.
Argument to Make_let_syntax.
Argument to Make3_using_map2.
Argument to Make_using_map2.
Argument to Make2_using_map2.
Module types below provide both global and local versions. In OxCaml, the latter accept local ~f closures.
Both local and portable versions are designed with a strict data structure in mind. The types won't make sense for Applicatives whose evaluation is delayed (e.g. most monads, Command.Param, or anything like a database query applicative).
Applicative operations. An applicative abstracts the notion of computations whose results can be combined. An 'a t represents a computation returning 'a.
Applicative operations for applicatives with two type parameters.
Applicative operations for applicatives with one type parameter.
Infix operators. This module type subsumes the other Index* types below.
Infix operators for applicatives with two type parameters.
Infix operators for applicatives with one type parameter.
Complete applicative interface. Extends _kernel with infix operators.
Complete applicative interface with two type parameters.
Complete applicative interface with one type parameter.
Supports let%map syntax. See ppx_let documentation.
Supports let%map syntax for applicatives with two type parameters.
Supports let%map syntax for applicatives with one type parameter.
Lazy_applicative is an applicative whose structure may be computed on-demand, instead of being constructed up-front. This is useful when implementing traversals over large data structures, where otherwise we have to pay O(n) up-front cost both in time and in memory.
Argument to Make_let_syntax3.
Argument to Make_let_syntax2.
Argument to Make_let_syntax.
Argument to Make3_using_map2.
Argument to Make_using_map2.
Argument to Make2_using_map2.
Module types below provide both global and local versions. In OxCaml, the latter accept local ~f closures.
Both local and portable versions are designed with a strict data structure in mind. The types won't make sense for Applicatives whose evaluation is delayed (e.g. most monads, Command.Param, or anything like a database query applicative).
Applicative operations. An applicative abstracts the notion of computations whose results can be combined. An 'a t represents a computation returning 'a.
Applicative operations for applicatives with two type parameters.
Applicative operations for applicatives with one type parameter.
Infix operators. This module type subsumes the other Index* types below.
Infix operators for applicatives with two type parameters.
Infix operators for applicatives with one type parameter.
Complete applicative interface. Extends _kernel with infix operators.
Complete applicative interface with two type parameters.
Complete applicative interface with one type parameter.
Supports let%map syntax. See ppx_let documentation.
Supports let%map syntax for applicatives with two type parameters.
Supports let%map syntax for applicatives with one type parameter.
Lazy_applicative is an applicative whose structure may be computed on-demand, instead of being constructed up-front. This is useful when implementing traversals over large data structures, where otherwise we have to pay O(n) up-front cost both in time and in memory.
Argument to Make_let_syntax3.
Argument to Make_let_syntax2.
Argument to Make_let_syntax.
Argument to Make3_using_map2.
Argument to Make_using_map2.
Argument to Make2_using_map2.
Module types below provide both global and local versions. In OxCaml, the latter accept local ~f closures.
Both local and portable versions are designed with a strict data structure in mind. The types won't make sense for Applicatives whose evaluation is delayed (e.g. most monads, Command.Param, or anything like a database query applicative).
Applicative operations. An applicative abstracts the notion of computations whose results can be combined. An 'a t represents a computation returning 'a.
Applicative operations for applicatives with two type parameters.
Applicative operations for applicatives with one type parameter.
Infix operators. This module type subsumes the other Index* types below.
Infix operators for applicatives with two type parameters.
Infix operators for applicatives with one type parameter.
Complete applicative interface. Extends _kernel with infix operators.
Complete applicative interface with two type parameters.
Complete applicative interface with one type parameter.
Supports let%map syntax. See ppx_let documentation.
Supports let%map syntax for applicatives with two type parameters.
Supports let%map syntax for applicatives with one type parameter.
Lazy_applicative is an applicative whose structure may be computed on-demand, instead of being constructed up-front. This is useful when implementing traversals over large data structures, where otherwise we have to pay O(n) up-front cost both in time and in memory.
Argument to Make_let_syntax3.
Argument to Make_let_syntax2.
Argument to Make_let_syntax.
Argument to Make3_using_map2.
Argument to Make_using_map2.
Argument to Make2_using_map2.
Module types below provide both global and local versions. In OxCaml, the latter accept local ~f closures.
Both local and portable versions are designed with a strict data structure in mind. The types won't make sense for Applicatives whose evaluation is delayed (e.g. most monads, Command.Param, or anything like a database query applicative).
Applicative operations. An applicative abstracts the notion of computations whose results can be combined. An 'a t represents a computation returning 'a.
Applicative operations for applicatives with two type parameters.
Applicative operations for applicatives with one type parameter.
Infix operators. This module type subsumes the other Index* types below.
Infix operators for applicatives with two type parameters.
Infix operators for applicatives with one type parameter.
Complete applicative interface. Extends _kernel with infix operators.
Complete applicative interface with two type parameters.
Complete applicative interface with one type parameter.
Supports let%map syntax. See ppx_let documentation.
Supports let%map syntax for applicatives with two type parameters.
Supports let%map syntax for applicatives with one type parameter.
Lazy_applicative is an applicative whose structure may be computed on-demand, instead of being constructed up-front. This is useful when implementing traversals over large data structures, where otherwise we have to pay O(n) up-front cost both in time and in memory.
Argument to Make_let_syntax3.
Argument to Make_let_syntax2.
Argument to Make_let_syntax.
Argument to Make3_using_map2.
Argument to Make_using_map2.
Argument to Make2_using_map2.
Argument to Make.
Argument to Make2.
The identity applicative. Useful as an argument to functors that require a monad, to produce a non-applicative result.
Produces a monad with one type parameter.
Produces a monad with two type parameters.
Produces a monad with three type parameters.
Converts a monad with one type parameter to an applicative.
Converts a monad with two type parameters to an applicative.
Converts a monad with three type parameters to an applicative.
Composes two applicatives, one nested inside the other.
Combines two applicatives as a pair.
Constructs a Let_syntax module for an applicative with one type parameter.
Constructs a Let_syntax module for an applicative with two type parameters.