Support for natural numbers.
The type of natural numbers.
Note that matching a natural number against a negative pattern might not work as you expect.
For example, evaluating the following expression results in a run-time error, instead of the
case 5 :: Natural of -5 -> "minus five" 5 -> "plus five"
The reason is that the
== operator of
Natural is used for checking if the patterns
match, making it necessary to convert
-5 to Natural.
Yields the monus of two natural numbers, which is their difference if the first number is greater than the second, and zero otherwise.