Computational monad (source code)

= Computational monad

A <type constructor> $M$ with operations $\operatorname{result}:A\to M A$ and $\mathbin{\triangleright}:M A\to(A\to M B)\to M B$ satisfying the <monad laws>. The first embeds a value; the second sequences a computation with a value-dependent continuation. This is the programming interface to a <monad>.