std.semigroup

Implementation of the Applicative type

Types

type Semigroup a = { append : a -> a -> a }

Semigroup a represents an associative operation on a. This means the following laws must hold:

  • forall x . append x (append y z) == append (append x y) z

Values

let append ?s : forall a . [std.semigroup.Semigroup a] -> a -> a -> a

Note
  • Known as (<>) or mappend in Haskell

let <> : forall a . [std.semigroup.Semigroup a] -> a -> a -> a