[Openmcl-devel] Static Program Analysis

Brent Fulgham bfulg at pacbell.net
Thu Jan 11 13:42:54 PST 2007


If I remember correctly, Stalin is a Scheme compiler -- so it falls into the CMUCL/SBCL optimization camp.

I'm curious if any tools exist to perform analysis on Lisp code so that a user could the review the program to deal with specific coding errors.

----- Original Message ----
From: Hamilton Link <helink at sandia.gov>
To: Brent Fulgham <bfulg at pacbell.net>; openmcl-devel <openmcl-devel at clozure.com>
Sent: Thursday, January 11, 2007 1:27:05 PM
Subject: Re: [Openmcl-devel] Static Program Analysis

I don't know about lisp, but there are such things for scheme... Stalin 
is one that springs to mind, if I am recalling correctly what it does.
h

Brent Fulgham wrote:
> I was reading that the Common Lisp standard supports various type declarations that may be used by the compiler to perform some optimizations.  I also know I've seen various messages from the OpenMCL compiler that it performs some type of analysis, since it identifies unreferenced variables, undeclared functions, etc.
>
> I'm curious if any tools exist in Common Lisp (or perhaps are already part of the compiler) that perform static analysis, along the lines of the Erlang Dialyzer (http://www.it.uu.se/research/group/hipe/dialyzer/) or even DrScheme's MrSpidey (http://www.cs.brown.edu/~sk/Publications/Papers/Published/ffkwf-mrspidey/).
>
> These tools can identify cases where a user attempts to execute non-functions, perform math on non-numbers, etc.
>
> The only thing a Google search turned up for me was an ancient (circa mid-80's) reference to an internal HP project called "MicroScope".  I don't see much else that is more recent.  The concensus on the #lisp IRC channel was that some static analysis is done in SBCL/CMUCL, but no one knew of any external tools.
>
> Thanks,
>
> -Brent
>
>
>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> http://clozure.com/mailman/listinfo/openmcl-devel
>
>
>   









More information about the Openmcl-devel mailing list