ghc-typelits-presburger: Presburger Arithmetic Solver for GHC Type-level natural numbers.

[ bsd3, library, math, type-system ] [ Propose Tags ]

ghc-typelits-presburger augments GHC type-system with Presburger Arithmetic Solver for Type-level natural numbers. This plugin only work with GHC builtin operations. To work with those of singletons package, use ghc-typelits-meta and/or ghc-typelits-presburger instead.

Since 0.3.0.0, integration with singletons package moves to singletons-presburger.

You can use by adding this package to build-depends and add the following pragma to the head of .hs files:

OPTIONS_GHC -fplugin GHC.TypeLits.Presburger
Versions [faq] 0.1.0.0, 0.1.1.0, 0.1.1.1, 0.2.0.0, 0.2.0.1, 0.2.0.2, 0.2.0.3, 0.2.0.4, 0.2.0.5, 0.3.0.0 (info)
Dependencies base (>=4.7 && <5), containers, equational-reasoning, ghc (>=7.10 && <8.11), ghc-tcplugins-extra (>=0.2 && <0.5), ghc-typelits-presburger, mtl, pretty, reflection, syb, transformers [details]
License BSD-3-Clause
Copyright 2015 (c) Hiromi ISHII
Author Hiromi ISHII
Maintainer konn.jinro _at_ gmail.com
Revised Revision 1 made by HiromiIshii at 2020-02-09T13:38:29Z
Category Math, Type System
Home page https://github.com/konn/ghc-typelits-presburger#readme
Bug tracker https://github.com/konn/ghc-typelits-presburger/issues
Source repo head: git clone https://github.com/konn/ghc-typelits-presburger
Uploaded by HiromiIshii at 2020-02-01T15:17:23Z
Distributions NixOS:0.3.0.0
Executables simple-arith-core
Downloads 4868 total (260 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2020-02-01 [all 1 reports]

Modules

[Index] [Quick Jump]

Flags

NameDescriptionDefaultType
examples

Builds example

DisabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees