[plt-scheme] Is there a general overview of contracts somewhere?
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