Design by Contract
A concept originated by the creator of Eiffel, capturing the idea that interfaces should be metaphorically like contracts between the provider and the consumer of a function. This amounts often to the provider conditionally satisfying a specification based on some characteristic of the caller.This is a useful principle, but not taken far enough by Eiffel itself.
- An introduction to the subject.
- Some links.
- From the Eiffel manual.
- A PLT article on contract soundness.
- A PLT article on behavioral contracts.
- An implementation in Python.
- An implementation in Ruby.
- An implementation in Common Lisp.
- See also Perfect and Sather.
This page is linked from: Eiffel