如何在common-lisp中将* readtable *设置为空的?

时间:2014-01-06 07:49:07

标签: common-lisp reader-macro

标准common-lisp定义了许多读者宏,例如()用于分组,'用于quote"用于字符串引用,{{ 1}}用于符号引用,|用于调度宏等。现在我想要禁用它们并使用我自己的那些,我必须逐个调用#来禁用它们然后定义我自己的。

我发现有一种方法可以通过调用set-macro-character将所有读取器宏恢复为标准宏,但有没有办法将它们设置为空(即所有字符都被视为普通字母和数字) ?

1 个答案:

答案 0 :(得分:3)

我认为没有办法。期望您只是对Lisp读取器进行增量修改,而不是试图批量替换它。它并不是真的被设计成以这种方式使用,因为你无法将所有内容定义为宏 - 大多数组成字符都与无法定义为读取器宏的内置行为相关联。