Cabal revisions of ghc-typelits-natnormalise-0.7.6
Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.
revision 1
-name: ghc-typelits-natnormalise-version: 0.7.6-synopsis: GHC typechecker plugin for types of kind GHC.TypeLits.Nat-description:- A type checker plugin for GHC that can solve /equalities/ and /inequalities/- of types of kind @Nat@, where these types are either:- .- * Type-level naturals- .- * Type variables- .- * Applications of the arithmetic expressions @(+,-,*,^)@.- .- It solves these equalities by normalising them to /sort-of/ @SOP@- (Sum-of-Products) form, and then perform a simple syntactic equality.- .- For example, this solver can prove the equality between:- .- @- (x + 2)^(y + 2)- @- .- and- .- @- 4*x*(2 + x)^y + 4*(2 + x)^y + (2 + x)^y*x^2- @- .- Because the latter is actually the @SOP@ normal form of the former.- .- To use the plugin, add the- .- @- OPTIONS_GHC -fplugin GHC.TypeLits.Normalise- @- .- Pragma to the header of your file.-homepage: http://www.clash-lang.org/-bug-reports: http://github.com/clash-lang/ghc-typelits-natnormalise/issues-license: BSD2-license-file: LICENSE-author: Christiaan Baaij-maintainer: christiaan.baaij@gmail.com-copyright: Copyright © 2015-2016, University of Twente,- 2017-2018, QBayLogic B.V.-category: Type System-build-type: Simple-extra-source-files: README.md- CHANGELOG.md-cabal-version: >=1.10-tested-with: GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5,- GHC == 8.8.4, GHC == 8.10.4, GHC == 9.0.1--source-repository head- type: git- location: https://github.com/clash-lang/ghc-typelits-natnormalise.git--flag deverror- description:- Enables `-Werror` for development mode and TravisCI- default: False- manual: True--library- exposed-modules: GHC.TypeLits.Normalise,- GHC.TypeLits.Normalise.SOP,- GHC.TypeLits.Normalise.Unify- build-depends: base >=4.9 && <5,- containers >=0.5.7.1 && <0.7,- ghc >=8.0.1 && <9.4,- ghc-tcplugins-extra >=0.3.1,- transformers >=0.5.2.0 && < 0.6- if impl(ghc >= 9.0.0)- build-depends: ghc-bignum >=1.0 && <1.1- else- build-depends: integer-gmp >=1.0 && <1.1- hs-source-dirs: src- default-language: Haskell2010- other-extensions: CPP- LambdaCase- RecordWildCards- TupleSections- if flag(deverror)- ghc-options: -Wall -Werror- else- ghc-options: -Wall--test-suite test-ghc-typelits-natnormalise- type: exitcode-stdio-1.0- main-is: Tests.hs- Other-Modules: ErrorTests- build-depends: base >=4.8 && <5,- ghc-typelits-natnormalise,- tasty >= 0.10,- tasty-hunit >= 0.9,- template-haskell >= 2.11.0.0- hs-source-dirs: tests- default-language: Haskell2010- other-extensions: DataKinds- GADTs- KindSignatures- NoImplicitPrelude- TemplateHaskell- TypeFamilies- TypeOperators- ScopedTypeVariables- if flag(deverror)- ghc-options: -O0 -dcore-lint+name: ghc-typelits-natnormalise +version: 0.7.6 +x-revision: 1 +synopsis: GHC typechecker plugin for types of kind GHC.TypeLits.Nat +description: + A type checker plugin for GHC that can solve /equalities/ and /inequalities/ + of types of kind @Nat@, where these types are either: + . + * Type-level naturals + . + * Type variables + . + * Applications of the arithmetic expressions @(+,-,*,^)@. + . + It solves these equalities by normalising them to /sort-of/ @SOP@ + (Sum-of-Products) form, and then perform a simple syntactic equality. + . + For example, this solver can prove the equality between: + . + @ + (x + 2)^(y + 2) + @ + . + and + . + @ + 4*x*(2 + x)^y + 4*(2 + x)^y + (2 + x)^y*x^2 + @ + . + Because the latter is actually the @SOP@ normal form of the former. + . + To use the plugin, add the + . + @ + OPTIONS_GHC -fplugin GHC.TypeLits.Normalise + @ + . + Pragma to the header of your file. +homepage: http://www.clash-lang.org/ +bug-reports: http://github.com/clash-lang/ghc-typelits-natnormalise/issues +license: BSD2 +license-file: LICENSE +author: Christiaan Baaij +maintainer: christiaan.baaij@gmail.com +copyright: Copyright © 2015-2016, University of Twente, + 2017-2018, QBayLogic B.V. +category: Type System +build-type: Simple +extra-source-files: README.md + CHANGELOG.md +cabal-version: >=1.10 +tested-with: GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5, + GHC == 8.8.4, GHC == 8.10.4, GHC == 9.0.1 + +source-repository head + type: git + location: https://github.com/clash-lang/ghc-typelits-natnormalise.git + +flag deverror + description: + Enables `-Werror` for development mode and TravisCI + default: False + manual: True + +library + exposed-modules: GHC.TypeLits.Normalise, + GHC.TypeLits.Normalise.SOP, + GHC.TypeLits.Normalise.Unify + build-depends: base >=4.9 && <5, + containers >=0.5.7.1 && <0.7, + ghc >=8.0.1 && <9.4, + ghc-tcplugins-extra >=0.3.1, + transformers >=0.5.2.0 && < 0.6 + if impl(ghc >= 9.0.0) + build-depends: ghc-bignum >=1.0 && <1.3 + else + build-depends: integer-gmp >=1.0 && <1.1 + hs-source-dirs: src + default-language: Haskell2010 + other-extensions: CPP + LambdaCase + RecordWildCards + TupleSections + if flag(deverror) + ghc-options: -Wall -Werror + else + ghc-options: -Wall + +test-suite test-ghc-typelits-natnormalise + type: exitcode-stdio-1.0 + main-is: Tests.hs + Other-Modules: ErrorTests + build-depends: base >=4.8 && <5, + ghc-typelits-natnormalise, + tasty >= 0.10, + tasty-hunit >= 0.9, + template-haskell >= 2.11.0.0 + hs-source-dirs: tests + default-language: Haskell2010 + other-extensions: DataKinds + GADTs + KindSignatures + NoImplicitPrelude + TemplateHaskell + TypeFamilies + TypeOperators + ScopedTypeVariables + if flag(deverror) + ghc-options: -O0 -dcore-lint