Uploaded at May 27 15:31:06 2021 (UTC)
Succesfully tested at Nov 22 03:01:22 2023

Curry Package contracts

contract: Some auxiliaries for contract checking

This package contains libraries to deal with contracts as described in this paper:

Sergio Antoy, Michael Hanus: Contracts and Specifications for Functional Logic Programming, Proc. of the 14th International Symposium on Practical Aspects of Declarative Languages (PADL 2012), Springer LNCS 7149, pp. 33-47, 2012

  • Library Contract.Names contains some operations to define and manipulate the names of contracts (i.e., specification and pre/postconditions) in a Curry program.
  • Library Contract.Usage contains some operations to check the correct usage of contracts (i.e., the occurrences and types of specification and pre/postconditions) in a FlatCurry program.
  • Library Test.Contract defines some auxiliaries to check contracts based on specifications or pre- and postconditions provided in a Curry module. It is used by the Curry preprocessor to translate contracts into dynamic assertions.


Download

Checkout with CPM:
cypm checkout contracts 3.0.0
Package source:
contracts-3.0.0.tar.gz [browse]
Source repository:
https://git.ps.informatik.uni-kiel.de/curry-packages/contracts.git