Subject: Re: sexp-aware theory of patches and "meta common lisp"
From: (Rob Warnock)
Date: Wed, 28 Feb 2007 00:11:56 -0600
Newsgroups: comp.lang.lisp
Message-ID: <>
<> wrote:
| As swell as they are, however, CL's extendible syntax and read macros
| are, thoroughly prevent the system described above to work with
| arbitrary portable code, since sexps have to be READ from a file,
| and in doing so lose data from the #+, #-, #. forms in the file...

Not to mention losing all the comments!  :-(

| It would be great to have an orthogonal, extendible "meta common lisp"
| language/package that could describe CL code solely for the purpose of
| tool/IDE integration (think CSS to XML, but for metadata). So if you
| called READ-META you'd get some abstract sexp object tagged with info
| about when it's supposed to be EVALed, and under what conditions,
| etc., and info about the sexp's "semantic" meaning (is it a part of
| the body of an anonymous function or a quoted list that may or may not
| be returned by a macro). ...

I don't know off-hand of corresponding work on CL, but pretty much
exactly this was done as part of PLT Scheme. Shriram Krishnamurthi
wrote a source-correlating macro-expander called "Zodiac" which was
used in the "MrSpidey" debugger. I don't think Zodiac is maintained
any more [<>
suggests not], at least not as a separate package, though some remnants
survive in such routines as "drscheme:load-handler:process-text/zodiac".

contains the "Zodiac Reference" documentation for the (ancient)
version 103p1 MzScheme that may be helpful, especially the
"Motivation" section.

The formal writeups were:

    Krishnamurthi, S. "Zodiac: A framework for
    building interactive programming tools",
    Technical Report TR96-262,
    Rice University, 1996.

    Krishnamurthi, S. "Zodiac: A programming environment builder",
    Technical Report TR96-259,
    Rice University, 1996.

but I can't seem to find an on-line copy.  [There is some mention in
but reference #18 there just points back to Rice TR96-259.]


Rob Warnock			<>
627 26th Avenue			<URL:>
San Mateo, CA 94403		(650)572-2607