package lsp

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module type Basic = sig ... end
module Make (M : Basic) : sig ... end

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.

module Exists : sig ... end

The monoid you get with empty = false and combine = ( || ).

module Forall : sig ... end

The monoid you get with empty = true and combine = ( && ).

module String : sig ... end

The string concatenation monoid with empty = "" and combine = ( ^ ).

module List (M : sig ... end) : sig ... end

The list monoid with empty = [] and combine = ( @ ).

module Appendable_list (M : sig ... end) : sig ... end

The list monoid with empty = [] and combine = ( @ ).

module Unit : sig ... end

The trivial monoid with empty = () and combine () () = ().

module Add (M : sig ... end) : sig ... end

The addition monoid with empty = zero and combine = ( + ).

module Mul (M : sig ... end) : sig ... end

The multiplication monoid with empty = one and combine = ( * ).

module Union (M : sig ... end) : sig ... end

The union monoid with empty = M.empty and combine = M.union.

module Product (A : sig ... end) (B : sig ... end) : sig ... end

The product of monoids where pairs are combined component-wise.

module Product3 (A : sig ... end) (B : sig ... end) (C : sig ... end) : sig ... end

Same as Product but for 3 monoids.

module Function (A : sig ... end) (M : sig ... end) : sig ... end

Functions that return a monoid form the following monoid:

module Endofunction : sig ... end

Endofunctions, i.e., functions of type t -> t, form two monoids.

OCaml

Innovation. Community. Security.