首页 > 解决方案 > 阅读器级别的 Common Lisp 调试

问题描述

我不确定如何正确表达这个问题。但是,它是这样的。

假设我们有一些宏与defunCommon Lisp 中的工作类似,并且是在此基础上构建的。我用这样的宏之一做了一个声明,它编译得很好。

但是,当我在 REPL 打电话时,我得到NIL了结果。这似乎令人费解,所以我评估了 REPL 的原始声明。它评估为NIL

我需要调试这个。我的问题是我应该关注读者级别还是其他地方。也就是说,如果没有抛出错误,我可以从哪里开始解决这个问题?

标签: lispcommon-lisp

解决方案


使用该MACROEXPAND函数查看您的宏调用扩展为什么。

(pprint (macroexpand '(my-defun ...)))

推荐阅读