Что такое «(апостроф) в ракетке?

Я немного запутался в значении' Войдите в ракетку. Мне кажется, что один и тот же знак имеет разные значения. Посмотрите на 2 простых примера ниже:

list

Возвращает вновь выделенный список, содержащий vs в качестве своих элементов.

> (list 1 2 3 4)
'(1 2 3 4)

quote

Создает постоянное значение, соответствующееданная величина (то есть представление фрагмента программы) без его лексической информации, местоположения источника и т. д. Кавычки, векторы и блоки являются неизменяемыми.

> '(1 2 3 4)
'(1 2 3 4)

Итак, мой вопрос:' знак имеет 2 значения (условное обозначение исписок) или это один и тот же тип данных иlist на самом деле возвращаетприведенное постоянное значение? Если второй случай, почему это работает:

> '(+ (- 2 13) 11)
'(+ (- 2 13) 11)

> (eval (list + (- 2 13) 11))
0

(также(eval '(+ (- 2 13) 11)) работает и правильно оценивает0)

Но это не так:

> (list + (- 2 13) 11)
'(#<procedure:+> -11 11)

> (eval '(#<procedure:+> -11 11))
. read: bad syntax `#<'

Связано может быть:Что такое «(апостроф) в Лиспе / Схеме?

Ответы на вопрос(2)

Ваш ответ на вопрос