package alba
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=439b1dce07c86e914d1ebf1712c5581418314b0c8d13594f27a698b1d25fe272
md5=5cf58d4ed4eacbe6f330e9d2378ef5c6
doc/alba.fmlib/Fmlib/List/index.html
Module Fmlib.List
List Monad
val return : 'a -> 'a t
return a
makes a singleton list with the element a
.
l >>= f
applies the function f
to all elements of the list l
and concatenates all lists.
f >=> g
composes the two monadic functions f
and g
.
flst <*> lst
is equivalent to flst >>= fun f -> map f lst
i.e. it maps all functions contained in flst
over the list lst
and then concatenates the results.
join
is the same as concat
.
Modified list functions
val find : ('a -> bool) -> 'a t -> 'a option
find p l
finds an element e
in the list l
which satisfies p e
.
val nth_strict : int -> 'a t -> 'a
ith_strict n list
returns the n
th element of the list. Precondition: list
has at least n + 1
elements.
val nth : int -> 'a t -> 'a option
ith_strict n list
returns the n
th element of the list if the list is long enough. Otherwise None
is returned.
List functions from Stdlib
append a b
prepends the lists a
in front of the list b
. Synonym a @ b
.
concat ll
concatenates all lists contained in the list of lists ll
.
rev_append a b
prepends the lists rev a
in front of the list b
.
val length : 'a t -> int
Additional list functions
map_and_filter f list
maps the list with f
and removes the element for which f e = None
.
split_at p lst
scans the list until it finds the first element satisfying p
and returns the prefix and the remainder starting at the encountered element.
Monadic list folding
module Monadic_fold (M : Module_types.MONAD) : sig ... end
Monadic list folding