Type level numbers implemented using type families.
This is type level numbers implemented using type families. Natural
numbers use binary encoding. With default context stack numbers up to
2^18-1 could be represented. Signed integer numbers use balanced
ternary encoding.
Package is structured as folows:
- [TypeLevel.Number.Classes] contain generic type families
such as Add
- [TypeLevel.Number.Nat] natural numbers implemented using
binary encoding
- [TypeLevel.Number.Int] signed integers implemented using
balanced ternary encoding
- [TypeLevel.Boolean] type level booleans
So far comparison of numbers, subtraction and multiplication of
numbers are supported.