Изменение существующей структуры списка
Вы можете изменять содержимое CAR и CDR конс-ячейки с помощью примитивов setcar и setcdr. Это деструктивные операции, поскольку они изменяют существующую структуру списка. Деструктивные операции следует применять только к изменяемым спискам, то есть к спискам, созданным с помощью cons, list или аналогичных операций. Списки, созданные с помощью цитирования, являются частью программы, и их не следует изменять деструктивными операциями. См. Изменяемость.
Примечание о Common Lisp: В Common Lisp для изменения структуры списка используются функции
rplacaиrplacd; они изменяют структуру так же, какsetcarиsetcdr, но функции Common Lisp возвращают конс-ячейку, тогда какsetcarиsetcdrвозвращают новое значение CAR или CDR.
Copyright © 1990-1996, 1998-2026 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Modifying-Lists.html