runtime-contracts 0.1.0

Structured, understandable runtime contracts.
Documentation

Structured, understandable runtime contracts.

This crate wishes to make it easier for practioners building software to use and understand Programmig-by-Contract. The philosophy is directly inspired by the Design-by-Contract (DbC) concept expressed by noted Computer Scientist, Dr. Betrand Meyer when designing the Eiffel programming language in 1986.

Additionally, much thanks goes to the contracts crate which implements contacts as procedural macros. Definitely check it out!

While many languages have contract libraries, many opt to compile them only in debug and test builds. The reasoning behind this choice seems to be that they don't wish to incur a performance penalty in production. A notable exception is Racket's contracts module, itself a work of art. In this library, we eschew this concern in the name of both runtime safety and program correctness.