[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


I want to reply to your comments that COMPILER-LET is (1) ugly and confusing,
(2) rarely used, and (3) can be replaced with MACRO-LET.  The second point is
probably true.  As to the other points I wish to disagree.  As to the first
point: I was delighted to see COMPILER-LET in the language because it was the
obvious clean LISPish way to gain a lot of useful capability for compilers and
extentions layered on top of LISP.

The method that you showed of using MACRO-LET doesn't really work very well.
There is a strategy that will work but it is a real croc:  A macro that was
going to output the COMPILER-LET wrapper outputs a MACRO-LET that includes a
local macro that produces the quoted of the value that would have been bound to
the special variable.  A macro that wishes to consume that value must pass a
form like (LOCAL-MACRO-NAME) to EVAL along with an environment pointer.