In math
Below is a , which does not matter. That is: any empty type can play a lower role.
Those f :: forall a . Bottom -> a
f :: forall a . Bottom -> a
functions are empty functions. "empty" in the given theoretical definition of functions.
In programming
A dedication to a particular empty type for use as the bottom of a programming language database library for convenience. The readability and compatibility of the code is beneficial for everyone who uses the same empty type as the bottom one.
In Haskell
We turn to them with the more friendly names "Lower" → "Void", "f" → "absurdity".
{-
This definition does not contain constructors => its instance cannot be created => it is empty.
absurd :: Bottom -> a absurd = \ case {}
In the case expression, we do not need to handle any cases because they do not exist.
They are already defined in the base
package.
source share