Я пишу программу на Common Lisp, в которой мне нужна функция с этой базовой схемой) :
(defun example (initial-state modify mod-list)
(loop for modification in mod-list
collecting (funcall modify initial-state modification)))
Проблема в том, что мне нужно, чтобы начальное состояние
было одинаковым каждый раз, когда оно передается в modify
, но modify
может быть разрушительным. просто сделал бы копию, но я не хочу делать никаких предположений о том, какой тип данных начальное состояние
.
Как я могу это сделать? Или это вообще возможно?
Спасибо!