Provides a Digit type, with the base of the digit available as a type-level Nat. Thus, it can be guaranteed at compile-time that digits of different bases can't be added together.
For more convenient provision of type-level parameters,
it's recommended to use the DataKinds
and TypeApplications
extensions.
Then, you can give type-level parameters using @
, as seen below, instead of
giving the full type.
>>> :set -XDataKinds -XTypeApplications
>>> import Data.TypedDigits
>>> let d = digit @9 3
>>> d
Just 3 (base 9)
src
: Library source filestest
: Unit testsdoctest
: Documentation tests usingdoctest