Contract: Practical typed lazy contracts.
Contracts describe properties of expressions (esp. functions) that are checked at run-time. For example, a contract states that an expression is a natural number, a list has at least one element or a function requires a natural number and a non-empty list of natural numbers as arguments and will produce a natural number as result. Thus these properties are both documented and enforced. Contracts are more expressive than static types. If a contract is violated, then an informative exception is raised. See homepage or Olaf Chitil: "Practical Typed Lazy Contracts", ICFP 2012, ACM.
Downloads
- Contract-0.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.1 |
---|---|
Dependencies | base (>=4.5 && <5), template-haskell (>=2.7) [details] |
License | BSD-3-Clause |
Author | Olaf Chitil |
Maintainer | O.Chitil@kent.ac.uk |
Category | Development |
Home page | http://www.cs.kent.ac.uk/~oc/contracts.html |
Uploaded | by OlafChitil at 2012-07-19T09:36:20Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Downloads | 1528 total (5 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] |