Сбросить состояние в Common Lisp
Новичок общий вопрос Lisp здесь.
есть ли способ сбросить состояние окружающей среды? Я имею в виду, есть ли какая-то команда, которая возвращает REPL в то же состояние, что и сразу после его запуска, то есть неинтернирует все переменные, функции и т. д. Или, если это не в общем стандарте Lisp, есть ли какое-то расширение в SBCL (реализация, которую я использую), чтобы сделать это?
(редактировать: Я знаю, что в слизи, M-x slime-restart-inferior-lisp делает это, но мне интересно, есть ли способ без перезапуска процесса)
2 ответов
В общем, нет. Я иногда хочу сделать что-то подобное, поэтому мой рабочий процесс обычно заключается в создании нового пакета для хранения любого проекта, который я начинаю, а затем, когда я хочу сбросить вещи, я использую DELETE-PACKAGE. Я никогда не делаю никакой работы в пакете CL-USER, так как в разных реализациях есть разные вещи.