The typelits-witnesses package
Provides witnesses for KnownNat and KnownSymbol instances for various operations on GHC TypeLits - in particular, the arithmetic operations defined in GHC.TypeLits, and also for type-level lists of KnownNat and KnownSymbol instances.
This is useful for situations where you have KnownNat n, and you want to prove to GHC KnownNat (n + 3), or KnownNat (2*n + 4), or when constraints on the lower or upper limits of n are needed.
It's also useful for when you want to work with type level lists of KnownNat or KnownSymbol instances and singletons for traversing them, and be able to apply analogies of natVal and symbolVal to lists with analogies for SomeNat and SomeSymbol.
Note that most of the functionality in this library can be reproduced in a more generic way using the great singletons library. The versions here are provided as a plumbing included alternative that makes some commonly found design patterns involving GHC's TypeLits functionality a little smoother, especially when working with external libraries or GHC TypeLit's Nat comparison API.
See README for more information.
[Skip to Readme]
|Versions||0.1.0.0, 0.1.0.1, 0.1.1.0, 0.1.2.0, 0.1.3.0, 0.2.0.0, 0.2.1.0, 0.2.2.0, 0.2.3.0 (info)|
|Dependencies||base (>=4.7 && <5), base-compat, constraints, reflection (>=2), transformers [details]|
|Copyright||(c) Justin Le 2016|
|Source repository||head: git clone git://github.com/mstksg/typelits-witnesses.git|
|Uploaded||Thu Jun 2 06:31:57 UTC 2016 by jle|
|Distributions||LTSHaskell:0.2.3.0, NixOS:0.2.3.0, Stackage:0.2.3.0, Tumbleweed:0.2.3.0|
|Downloads||462 total (37 in the last 30 days)|
|Status||Docs available [build log]
Last success reported on 2016-06-02 [all 1 reports]
For package maintainers and hackage trustees