ANSI Common Lisp 3 Evaluation and Compilation 3.8 Dictionary Evaluation and Compilation
- Arguments and Values:
object - an object; not evaluated.
The quote special operator just returns object.
The consequences are undefined if literal objects (including
quoted objects) are destructively modified.
(setq a 1) 1
(quote (setq a 3)) (SETQ A 3)
"a (QUOTE A)
"'a (QUOTE (QUOTE A))
(setq a 43) 43
(list a (cons a 3)) (43 (43 . 3))
(list (quote a) (quote (cons a 3))) (A (CONS A 3))
(car '(a b)) A
'(car '(a b)) (CAR (QUOTE (A B)))
#(car '(a b)) #(CAR (QUOTE (A B)))
'#(car '(a b)) #(CAR (QUOTE (A B)))
- See Also:
Section 3.1 Evaluation,
Section 2.4.3 Single-Quote,
Section 3.2.1 Compiler Terminology
The textual notation 'object is equivalent to (quote object);
see Section 3.2.1 Compiler Terminology.
Some objects, called self-evaluating objects,
do not require quotation by quote.
However, symbols and lists are used to represent parts of programs,
and so would not be useable as constant data in a program without quote.
Since quote suppresses the evaluation of these objects,
they become data rather than program.
- Allegro CL Implementation Details: