[plt-scheme] Looking for a static analysis tool

From: Dominique Boucher (Dominique.Boucher at sgdl-sys.com)
Date: Thu Dec 12 09:39:27 EST 2002


As I understand it, your separate analysis will heavily depend on many of
the MzScheme extensions (modules, contracts, macros, etc.). I understand
your goals. But we don't want to expose those extensions to our users, since
most of them don't have any prior programming experience. Just learning good
Scheme practices might be a challenge. If you add modules and contracts...

On the other hand, I wonder if the module's interface and the contracts
can't be inferred (at least to some extent) automatically from the code
itself, by our programming environment... This way, we could get the best of
both worlds.

Regarding the "analysis extensions", I strongly believe that in some cases,
analyzing code AFTER macro expansion will result in overly conservative
approximations. We have many little languages (an LALR(1) parser generator,
parametric context-free L-systems, etc.) generating code that might confuse
the analyzer. This often happens when the generated code is table-driven
(like our LR driver).


Posted on the users mailing list.