Я начал изучать программирование с помощью Emacs Lisp. Меня так смущает символьная цитата. Например:
(progn
(setq a '(1 2))
(prin1 a)
(add-to-list 'a 3)
(prin1 a)
(setcar a 4)
(prin1 a)
(push 5 a)
""
)
почему для функции "добавить к списку" нужен котируемый символ в качестве первого аргумента, в то время как функции "setcar" и "push" не нуждаются в котировке аргументов?