@hackage ghc-typelits-extra0.5.3
Additional type-level operations on GHC.TypeLits.Nat
Categories
License
BSD-2-Clause
Maintainer
christiaan.baaij@gmail.com
Links
Versions
Installation
Tested Compilers
Dependencies (11)
- base >=4.8 && <5
- containers >=0.5.7.1 && <0.9
- ghc >=8.8 && <9.17
- ghc-bignum >=1.0 && <1.5
- ghc-prim >=0.5 && <1
- ghc-tcplugin-api >=0.18.1.0 && <0.19 Show all…
Dependents (15)
@hackage/clash-protocols, @hackage/clash-shockwaves, @hackage/hasktorch, @hackage/clash-vexriscv, @hackage/ice40-prim, @hackage/clash-ghc, Show all…
Package Flags
deverror
(off by default)
Enables `-Werror` for development mode and TravisCI
ghc-typelits-extra
Extra type-level operations on GHC.TypeLits.Nat and a custom solver implemented as a GHC type-checker plugin:
GHC.TypeLits.Extra.Max: type-level maxGHC.TypeLits.Extra.Min: type-level minGHC.TypeLits.Extra.Div: type-level divGHC.TypeLits.Extra.Mod: type-level modGHC.TypeLits.Extra.FLog: type-level equivalent of integerLogBase# .i.e. the exact integer equivalent to "floor (logBase x y)"GHC.TypeLits.Extra.CLog: type-level equivalent of the ceiling of integerLogBase# .i.e. the exact integer equivalent to "ceiling (logBase x y)"- 'GHC.TypeLits.Extra.Log': type-level equivalent of <https://hackage.haskell.org/package/base-4.17.0.0/docs/GHC-Integer-Logarithms.html#v:integerLogBase-35- integerLogBase#>
where the operation only reduces when "
floor (logBase b x) ~ ceiling (logBase b x)" GHC.TypeLits.Extra.GCD: a type-level gcdGHC.TypeLits.Extra.LCM: a type-level lcm