Version: 4.1.5

7 Contracts

Contracts in Guide: PLT Scheme introduces contracts.

The contract system guards one part of a program from another. Programmers specify the behavior of a module exports via provide/contract and the contract system enforces those constraints.

Contracts come in two forms: those constructed by the various operations listed in this section of the manual, and various ordinary Scheme values that double as contracts, including

 (require scheme/contract)

The bindings documented in this section are provided by the scheme/contract and scheme libraries, but not scheme/base.

    7.1 Data-structure Contracts

    7.2 Function Contracts

    7.3 Lazy Data-structure Contracts

    7.4 Attaching Contracts to Values

    7.5 Building New Contract Combinators

    7.6 Contract Utilities