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 | 1554 total (3 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]  |