From: Franz Kafka
Subject: Some Questions about Lisp Books?
Date: 
Message-ID: <b3b6b110.0304141641.2d53de45@posting.google.com>
I was thinking about buying Lisp In Small Pieces? and Escentials of
Programming Languages? How good are these books. I already know
Lisp/Scheme but wanted to learn about how to write compilers in Lisp,
and how to write a Lisp compiler. As these are pricey books; how
helpful would these be? How does Anatomy of Lisp compair to the above
books?

I am also intrested in writing Lisp in Lisp, Reflexive or Metacircular
compilers--are there any books about such topics. I liked some papers
I've read in 'Lisp Ponters' (Does the 'zein still exist?) about
implementing Lisp Special-Forms as Lisp Macros.

I also liked in ANSI CL how Paul Grham wrote the basic Lisp functions
in Lisp. Is there a book about how to create a Lisp-kernal (microcode
compiler, base functions) and write an entire ANSI CL on top of it.
(Or, compiling Scheme on top of a kernal, because it is a smaller
language.)

Is there a book about implementing ANSI CL ontop of Scheme. Peter
Novig wrote about implementing Scheme in ANSI CL in his Paradigms of
Artificial Intelligence: Case Studies in Common Lisp book.
From: Franz Kafka
Subject: Re: Some Questions about Lisp Books?
Date: 
Message-ID: <b3b6b110.0304211556.9a500ce@posting.google.com>
·································@hotmail.com (Franz Kafka) wrote in message 
> 
> I am also intrested in writing Lisp in Lisp, Reflexive or Metacircular
> compilers--are there any books about such topics. I liked some papers
> I've read in 'Lisp Ponters' (Does the 'zein still exist?) about
> implementing Lisp Special-Forms as Lisp Macros.
> 

The Lisp I am trying to port has no: PROGV, FLET, LABELS, MACROLET,
and some
other special forms.

The article I read had code implementing: PROGV using
Unwind-Protect(which my Lisp has.) Implementing LABELS using FLET. It
has FLET implemented using MACROLET.

My Lisp does not have a MICROLET.

Could I implement MICROLET in terms of LABELS or FLET?

Could I define all ANSI CL's Special Forms in terms of each other?

I posted the code I was using as a (LONG) message.

If someone could either e-mail me or post the code to implement
all of the Special Forms using other Special Forms so I could
bootstrap my Lisp.

The Lisp I am using has: PROG1, PROG2, PROGN, UNWIND-PROTECT, and
others.

I think it is missing: MACROLET, SYMBOL-MACROLET, GENERIC-MACROLET,
LABELS, GENERIC-LABELS, PROGV, FLET.

Is it possible to implement the above special forms using LAMBDA. (I
think this is one of the most Powerful Lisp Functions. LAMBDA-CALCULUS
& ALL--I could BE wrong.

I guess my question is if I have a subset of CL that has APPLY and
EVAL can I implement the rest of ANSI CL in CLtL1 CL, or CLtL2 CL if
the former is not possible, and if so is there code to do this.

I am not worryed about CLOS with aMOP you can build a subst of CLOS in
CL.