Skip to content

arranstewart/hs-typed-digits

Repository files navigation

Build Status Hackage

typed-digits

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.

Usage example

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)

Source tree contents

  • src: Library source files
  • test: Unit tests
  • doctest: Documentation tests using doctest

Releases

No releases published

Packages

No packages published