A standard incarnation of an interval map for some key type.
The majority of the operations are commented in Operations.
A monad is an abstraction of the concept of sequencing of computations. A value of type 'a monad represents a computation that returns a value of type 'a.
return v
returns the (trivial) computation that returns v.
All values of type unit t are equal.