Succesfully tested at Aug 8 03:45:36 2020

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 0.0.1
Package source:
contracts-0.0.1.tar.gz [browse]
Source repository:
https://git.ps.informatik.uni-kiel.de/curry-packages/contracts.git