Subject: Re: How to implement setf ?
From: (Rob Warnock)
Date: Sun, 14 May 2006 20:57:06 -0500
Newsgroups: comp.lang.lisp
Message-ID: <>
Pascal Bourguignon  <> wrote:
| Since always, (from the beginning), lisp implementations were written
| in lisp (even if the first one was then hand-compiled to 704
| assembler).  If the inventor of lisp used lisp to write lisp, why
| couldn't you do the same?

A much more readable extended version (the 1960 CACM paper), which also
contains the "boxes & arrows" descriptions of internal data structures
and the low-level machine implementation of a few of the primitives
(both intentionally omitted from AIM-008), may be found here:  [cover page]

| I'd advise you to read SICP too: 
| or watch the videos:

And any serious would-be implementor should also read Christian
Queinnec's marvelous "LiSP", which covers numerous design
alternatives in the implementation of Lisp-like languages:

    "Lisp in Small Pieces" [originally "Les langages Lisp"]

I personally found "Chapter 6: Fast interpretation" to be
particularly useful as an introduction to the preprocessing
needed for fast lexical variables, including various alternatives
for the runtime representations of lexical environments [including
one particularly-tricky "gotcha" in the interaction between the
representation of closures and Scheme-style continuations].


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