Monoid
- Group
- Associative
- Identity
- No Inverse (thus not a group)
Signature
module type Monad = sig
type 'a t
val return : 'a -> 'a t
val bind : 'a t -> ('a -> 'b t) -> 'b t
endHaskell
A design pattern used to handle program-wide concerns, such as state or I/O, in a pure functional way.