On this page:

2.3 Literals: quote and #%datum

Many forms are implicitly quoted (via #%datum) as literals. See Expansion Steps for more information.

+Quoting: quote and in The Racket Guide introduces quote.

(quote datum)
Produces a constant value corresponding to datum (i.e., the representation of the program fragment) without its lexical information, source location, etc. Quoted pairs, vectors, and boxes are immutable.


> (quote x)


> (quote (+ 1 2))

'(+ 1 2)

> (+ 1 2)


(#%datum . datum)
Expands to (quote datum), as long as datum is not a keyword. If datum is a keyword, a syntax error is reported.

See also Expansion Steps for information on how the expander introduces #%datum identifiers.


> (#%datum . 10)


> (#%datum . x)


> (#%datum . #:x)

eval:494:0: #%datum: keyword used as an expression in: #:x