我想从我正在创建的包中定义一个名为“defun”的宏,并且我想将其导出以在某些地方使用。有一个名为 parenscript 的库,它在它的包中执行此操作,如下所示,
(export #:defun)
当我尝试在自己的包中执行此操作时,我收到此 SBCL 错误
Lock on package COMMON-LISP violated when defining DEFUN as a macro while in package COMMON-LISP-USER.
这是如何在 parenscript 库中完成的?我知道您可以输入表格;
(ps (defun function-name (args) (body)))
我希望能够做到这一点,但无法弄清楚这是如何做到的?