Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!cmcl2!phri!marob!cowan From: cowan@marob.MASA.COM (John Cowan) Newsgroups: comp.lang.lisp Subject: Re: #( syntax Message-ID: <655@marob.MASA.COM> Date: 15 May 89 19:55:21 GMT References: <8905120152.AA17406@anaconda.Stanford.EDU> <432@soi.UUCP> Reply-To: cowan@marob.masa.com (John Cowan) Organization: ESCC New York City Lines: 19 In article <432@soi.UUCP> chip@soi.UUCP (Chip Morris) writes: [Reference to <8905120152AA17406@anaconda.Stanford.EDU>, which explains that Lucid CL accepts general vectors as self-quoting, whereas Coral and Franz Allegro don't] >Coral is OK, and so is Franz Allegro. If a form isn't >self-evaluating, i.e. doesn't return itself as a value, then in >general it must be quoted. CLtL (Steele) says in section >5.1.1 what the self-evaluating forms are: numbers, characters, >strings,bit-vectors, () and NIL, as well as all keywords. So >technically anything else must be quoted, including arrays, vectors, >and structures. See also "Common Lisp, The Reference", page 665. CLtL tells us that a CL implementation may extend the class of evaluatable constructions beyond the standard variables, function/macro calls, and self-quoting objects. It is conforming for an implementation to accept general vectors as self-quoting; however, it is >not< portable for source code to depend on this behavior.