[plt-scheme] contracts.ss: Can you disable them at runtime?

From: Richard Cobbe (cobbe at ccs.neu.edu)
Date: Thu May 17 10:16:35 EDT 2007

On Thu, May 17, 2007 at 09:59:16AM -0400, Matthias Felleisen wrote:
>  On May 17, 2007, at 9:41 AM, Richard Cobbe wrote:
> > I've often wanted to disable them for certain modules even "during
> > practice."  When I'm running test cases and debugging, having to repeatedly
> > recompile a module with complicated structure and contract definitions is
> > slow enough to be very annoying and almost slow enough to be impractical.
>  It sounds like you're using contracts as a substitute for types

Yes, for two reasons:

  1) The last time I looked into this (several months ago) Typed Scheme
     wasn't yet ready to do the things I want from a type or contract
     system.  Perhaps it's time to revisit that decision.

  2) I understand the pragmatics of using a type system.  Therefore, I
     understand the pragmatics of using a contract system as though it were
     a type system.  I don't understand the pragmatics of using a contract
     system in another way.

Side issue: based on conversations with other people in the lab, I know
that I'm not the only one who doesn't really understand the pragmatics of
using contracts.  Addressing this shortcoming would help significantly in
the adoption of contracts, I believe.

>  and a pre-optimization experience. -- Matthias

I don't know what this means.


Posted on the users mailing list.