Subject: Re: sexp-aware theory of patches and "meta common lisp"
From: rpw3@rpw3.org (Rob Warnock)
Date: Wed, 28 Feb 2007 00:11:56 -0600
Newsgroups: comp.lang.lisp
Message-ID: <9KKdnTBgZ6OxgHjYnZ2dnUVZ_r-onZ2d@speakeasy.net>
<nallen05@gmail.com> 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 [<http://ja.soegaard.net/planet/html/collects/syntax/doc.txt>
suggests not], at least not as a separate package, though some remnants
survive in such routines as "drscheme:load-handler:process-text/zodiac".

<http://download.plt-scheme.org/doc/103p1/html/tools/node107.htm>
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
<http://cs.brown.edu/people/sk/Publications/Papers/Published/ffkwf-mrspidey/>,
but reference #18 there just points back to Rice TR96-259.]


-Rob

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607