[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: quasiquotation semantics
At 12:33 PM 95/08/7 -0400, Marc Feeley wrote:
>Suppose I write the following quasiquote expression: `(a ,X b ,Y)
>
>Is it equivalent to:
> (list 'a X 'b Y)
>or
> (cons 'a (cons X (cons 'b (cons Y '()))))
In implementations I am familiar with, the second, explicit cons, form is
always used.
Another interpretation is (roughly):
(let ( (temp (cons 'a (cons #f (cons 'b (cons #f '())))) ) )
(setf (cadr temp) X)
(setf (caddr temp Y)
temp
)
where temp is shared amoung all invocations of the quasiquoted form, but I
don't know of any implementations which do this.
If we standardize something we should use the most common implementation
(perhaps JARs?).
Cheers,
-Ken