Управление макросами читателя в Common Lisp - PullRequest
2 голосов
/ 21 января 2012

Я хочу определить макросы считывателя таким образом, чтобы они влияли только на определенный пакет / файл.

До сих пор я мог загружать эти файлы с помощью

(let ((*readtable* (copy-readtable)))
  (load "file.lisp"))

лучший способ сделать это?

1 Ответ

6 голосов
/ 21 января 2012

named-readtables достаточно хорош для манипулирования читаемыми таблицами.

EDIT:

Вы можете посмотреть на Clesh и особенно thisЗафиксируйте , чтобы увидеть, как я использовал named-readtables для определения нового читаемого файла.Так что теперь вместо использования (clesh:enable) для использования макросов считывателя можно использовать (named-readtables:in-readtable clesh:syntax).

...