The type-level-numbers package

[Tags:bsd3, library, test]

This is type level numbers implemented using type families. Natural numbers use binary encoding. With default context stack numbers up to 2^18-1 coudl 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.

Changes in

* @withNat@, @withInt@, @SomeNat and @SomeInt@ added.

Changes in

* Fix build for GHC 7.4

Changes in

* Fix URL in cabal file

Changes in

* Workaround for GHC bug #4364 (Build failure on GHC 7.0)


Versions 0.1,,,,,,
Dependencies base (>=3 && <5), template-haskell (>2.0) [details]
License BSD3
Author Alexey Khudyakov <>
Maintainer Alexey Khudyakov <>
Category Type System
Bug tracker
Source repository head: hg clone
head: git clone
Uploaded Thu Jun 13 14:53:15 UTC 2013 by AlexeyKhudyakov
Distributions LTSHaskell:, NixOS:, Stackage:, Tumbleweed:
Downloads 2623 total (52 in the last 30 days)
0 []
Status Docs uploaded by user [build log]
Successful builds reported [all 1 reports]
Hackage Matrix CI




Maintainer's Corner

For package maintainers and hackage trustees