package lsp
Install
Dune Dependency
Authors
-
AAndrey Popp <8mayday@gmail.com>
-
RRusty Key <iam@stfoo.ru>
-
LLouis Roché <louis@louisroche.net>
-
OOleksiy Golovko <alexei.golovko@gmail.com>
-
RRudi Grinberg <me@rgrinberg.com>
-
SSacha Ayoun <sachaayoun@gmail.com>
-
Ccannorin <cannorin@gmail.com>
-
UUlugbek Abdullaev <ulugbekna@gmail.com>
-
Thibaut Mattio
-
MMax Lantas <mnxndev@outlook.com>
Maintainers
Sources
sha256=9640f418cbacedb41d888908e99d3ad349d473c35876271acc9185d5c6ca1104
sha512=7353542380fcd419569fd729017ba592d817c284209033016c6921bd6bf0568fc51c8f47f88a82713bebbfacc9bdd841f512d984dd49c014632d27910089c935
doc/lsp.stdune/Stdune/Monoid/index.html
Module Stdune.Monoid
Source
This functor extends the basic definition of a monoid by adding a convenient operator synonym ( @ ) = combine
, as well as derived functions reduce
and map_reduce
.
The monoid you get with empty = false
and combine = ( || )
.
The monoid you get with empty = true
and combine = ( && )
.
The string concatenation monoid with empty = ""
and combine = ( ^ )
.
The list monoid with empty = []
and combine = ( @ )
.
The list monoid with empty = []
and combine = ( @ )
.
The trivial monoid with empty = ()
and combine () () = ()
.
The addition monoid with empty = zero
and combine = ( + )
.
The multiplication monoid with empty = one
and combine = ( * )
.
The union monoid with empty = M.empty
and combine = M.union
.
The product of monoids where pairs are combined component-wise.
module Product3
(A : sig ... end)
(B : sig ... end)
(C : sig ... end) :
S with type t = A.t * B.t * C.t
Same as Product
but for 3 monoids.
Functions that return a monoid form the following monoid:
Endofunctions, i.e., functions of type t -> t
, form two monoids.