lispmxEn 2021-06-30 16:49:18

There are exceptions to the general pattern evaluation functional forms.

For instance, a special functional form is QUOTE.

Quote is used to suppress the evaluation of an expression in a place in which it would otherwise be evaluated.

(defun sum (x y)
  (+ x y))

(quote (sum 2 3))

(SUM 2 3)

The single quote mark ' is an abbrevation for the QUOTE form.
Thus '(sum 2 3) is equivalente to (quote (sum 2 3)) .

In other words QUOTE returns its single argument, as written, without evaluating  it.

You can define a global var like:

(defparameter *wizard* (quote (sum 2 3)))

The value of the variable is (SUM 2 3) so, if you want to evaluate it you need to use eval function like:

(eval *wizard*)

 and you get 5 as result.