The absent value
None type represents a type with no value.
It is often used to type code that fails to return control (e.g. an infinite loop)
or to designate impossible values (e.g. the type
?None only contains
let impossible : <A>None -> A
Turns an absurd value into an arbitrary type.