Subject: Re: Dynamic unquote ( , )?
From: rpw3@rpw3.org (Rob Warnock)
Date: Tue, 07 Feb 2006 21:51:39 -0600
Newsgroups: comp.lang.lisp
Message-ID: <lfKdna-s7aBW93TeRVn-sw@speakeasy.net>
Marcin 'Qrczak' Kowalczyk  <qrczak@knm.org.pl> wrote:
+---------------
| Ulrich Hobelmann <u.hobelmann@web.de> writes:
| > So it seems like the quasiquotation expands to some funny term with LIST*.
| 
| The representation of quasiquotation is not standarized, only its
| effect when executed. Different Lisp implementations use different
| representations.
+---------------

Yup. This is one place where Scheme got it right, IMHO, by at least
standardizing the name of the quasiquotation macro and the associated
internal syntax markers -- QUASIQUOTE, UNQUOTE, and UNQUOTE-SPLICING --
that the reader transforms `,,@ into:

 http://schemers.org/Documents/Standards/R5RS/HTML/r5rs-Z-H-7.html#%_sec_4.2.6

Also, by making QUASIQUOTE an explicit operator ("syntax", but it
could have been a macro in CL), it allows the embedding of "implicit
quasiquotation" in the forms of *other* wrapper macros, such as are
used by the Scheme Shell, for example. [I have written elsewhere
(several times) on why the lack of such standarization makes it
practically impossible to write a "CL Shell" with Scsh-style syntax.]


-Rob

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607