2012-01-21 13 views
2

特定のパッケージ/ファイルだけに影響するようにリーダーマクロを定義したいと思います。Common Lispでリーダーマクロを管理する

これまでのところ、私は

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

でこれらのファイルをロードすることができたが、それを行うには良い方法はありますか?

答えて

6

named-readtablesは、読書を操作するのに非常に適しています。

EDIT:

あなたは、私が新しいreadtableを定義するためにnamed-readtablesを使用しましたか確認するためにClesh、特にthis commitで見ることができます。そこで、(clesh:enable)を使用してリーダマクロを使用する代わりに、(named-readtables:in-readtable clesh:syntax)を使用します。

+0

どのように使いやすいのは、スライムとasdfですか? – sabof

+1

@sabof: 'named-readtables'は' quicklisp'で利用できるので '(ql:quickload:named-readtables)'できます。 – Daimrod

関連する問題