uom-plugin: Units of measure as a GHC type-checker plugin

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

The uom-plugin library adds support for units of measure as a GHC type-checker plugin. See Data.UnitsOfMeasure.Tutorial for an introduction to the library.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.1.1.0, 0.2.0.0, 0.2.0.1, 0.3.0.0, 0.4.0.0
Change log CHANGELOG.md
Dependencies base (>=4.9.1.0 && <5), containers (>=0.5 && <0.7), deepseq (>=1.3 && <1.5), ghc (>=9.0.1 && <9.5), ghc-tcplugin-api (>=0.8.3.0 && <0.9), template-haskell (>=2.9 && <2.20), units-parser (>=0.1 && <0.2) [details]
License BSD-3-Clause
Copyright Copyright (c) 2014-2022, Adam Gundry
Author Adam Gundry <adam@well-typed.com>
Maintainer Adam Gundry <adam@well-typed.com>
Category Type System
Home page https://github.com/adamgundry/uom-plugin#readme
Bug tracker https://github.com/adamgundry/uom-plugin/issues
Source repo head: git clone https://github.com/adamgundry/uom-plugin
Uploaded by AdamGundry at 2022-10-09T11:00:32Z
Distributions
Reverse Dependencies 2 direct, 0 indirect [details]
Downloads 3232 total (14 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for uom-plugin-0.4.0.0

[back to package description]

Units of measure as a GHC type-checker plugin

⚠️ This library is experimental, and may lead to unexpected type-checking failures or even type soundness bugs.

The uom-plugin library adds support for units of measure as a GHC type-checker plugin. See Data.UnitsOfMeasure.Tutorial for an introduction to the library, and the accompanying paper for more background. An example of a package that uses the library is given in uom-plugin-examples.

The latest version of the library is tested with GHC 9.0 to 9.4. Older versions of uom-plugin (0.3 and earlier) work with the GHC 7.10, 8.0 and 8.2 series. There are no versions supporting GHC 8.4 to 8.10 (#43). Running cabal haddock on this library requires GHC 9.4 (see #66).