elof <email@example.com> wrote:
| Do not study one of the major lisp compilers as your first step. Instead
| read "Structure and Interpretation of Computer Programs" followed by
| In Small Pieces". They describe how lisp interpreters, compilers,
| garbage collecters etc. can and have been built.
There's also a simple Scheme compiler written in Common Lisp in
chapters #22 & #23 of Peter Norvig's "Paradigms of Artificial
Intelligence Programming: Case Studies in Common Lisp" [known
around here as "PAIP", see <http://www.norvig.com/paip.html>].
It generates byte-codes for a very simple hypothetical stack
machine: starts with a simple version, then adds tail call
optimization, then CALL/CC, then finally adds some peephole
optimization. The web site has the source code. I'd probably
suggest reading it between SICP & LiSP.
But I agree that if you're serious about compiling, Queinnec's
LiSP is a must!
Rob Warnock <firstname.lastname@example.org>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607