Next: Backquote, Previous: Kinds of Forms, Up: Evaluation [Contents][Index]
10.3 QuotingThe special form quote
returns its single argument, as written, without evaluating it. This provides a way to include constant symbols and lists, which are not self-evaluating objects, in a program. (It is not necessary to quote self-evaluating objects such as numbers, strings, and vectors.)
This special form returns object, without evaluating it. The returned value might be shared and should not be modified. See Self-Evaluating Forms.
Because quote
is used so often in programs, Lisp provides a convenient read syntax for it. An apostrophe character (‘'’) followed by a Lisp object (in read syntax) expands to a list whose first element is quote
, and whose second element is the object. Thus, the read syntax 'x
is an abbreviation for (quote x)
.
Here are some examples of expressions that use quote
:
(quote (+ 1 2)) ⇒ (+ 1 2)
Although the expressions (list '+ 1 2)
and '(+ 1 2)
both yield lists equal to (+ 1 2)
, the former yields a freshly-minted mutable list whereas the latter yields a list built from conses that might be shared and should not be modified. See Self-Evaluating Forms.
Other quoting constructs include function
(see Anonymous Functions), which causes an anonymous lambda expression written in Lisp to be compiled, and ‘`’ (see Backquote), which is used to quote only part of a list, while computing and substituting other parts.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4