[plt-scheme] Is there a general overview of contracts somewhere?

From: Robby Findler (robby at cs.uchicago.edu)
Date: Sun Apr 17 18:45:11 EDT 2005

At Sun, 17 Apr 2005 16:21:10 -0500, "jekwtw" wrote:
> Out of curiosity, could you (or someone) provide a brief
> compare-and-contrast between PLT's contracts and Common Lisp's type
> specifiers and (declare ...) forms?

I'm not very familiar with Common Lisp's type specs, but from what I
can tell, there is a substantial philosophical difference in that CL's
specs are mostly used by the cmpiler to optimize the code generation
(and thus, might remove checks that would be performed at run-time),
whereas Mz's are designed to improve the robustness of the code, so are
always checked, never assumed.

Also, on the technical front, I suspect that higher-order function
contracts are not supported by CL.

Robby



Posted on the users mailing list.