[plt-scheme] The role of contracts in the maintenance and ongoing development of DrScheme

From: Grant Rettke (grettke at acm.org)
Date: Fri Jan 25 10:51:25 EST 2008

On Jan 25, 2008 7:23 AM, Robby Findler <robby at cs.uchicago.edu> wrote:
> I guess you're getting at something deeper here, but their role is to
> add additional, checked specifications to the program (with proper
> blame assignment, natch) so we know when something has gone wrong
> sooner, rather than later. This makes it easier to fix, etc.

Well, yes. In a past post there was a long discussion about the role
of contracts and how they ought not replace a type system, among other
things, but the comments were more general in nature.

Since you guys maintain a large Scheme codebase I figure that you have
applied contracts, and have a better sense of their "sweet spot" when
it comes to how they are used in "real projects". Perhaps even you
guys have internalized/standardized (spoken or unspoken) some
practices like "in such and such a situation, be sure to add contracts
because it helps somehow".

> Maybe you want to read this:
>   http://pre.plt-scheme.org/docs/html/guide/contracts.html

I will check that out.

Posted on the users mailing list.