有没有一种方法可以在不实际定义宏的情况下展开它?我的情况是,我有一堆可以/不可以覆盖clojure宏的宏,我需要将这些宏应用于s-expression列表?
发布于 2011-05-09 09:19:08
宏扩展看不到由宏小程序引入的宏。它们只在编译时存在,而宏扩展(当您直接调用它时)在运行时操作。您的测试之所以有效,是因为您以与clojure.core相同的方式定义了when。但是,只要你不想在运行时扩展,宏就能解决你的问题。
https://stackoverflow.com/questions/5931256
复制相似问题