如何在 Chicken Scheme 宏中调用 "when" 宏?
How to call the "when" macro in a Chicken Scheme macro?
Chicken Scheme 定义了一个 (when)
宏,相当于 (if (begin))
。但是,当我尝试从我自己的一个宏中调用它时,它会抱怨 "variable" 未定义:
(define-syntax blah
(ir-macro-transformer
(lambda (expr inject compare)
(when something
(do-something)))))
Error: during expansion of (blah ...) - unbound variable: when
我可以import
做什么来完成这项工作?
与答案相同;只需 (import-for-syntax chicken)
,一切就绪。
Chicken Scheme 定义了一个 (when)
宏,相当于 (if (begin))
。但是,当我尝试从我自己的一个宏中调用它时,它会抱怨 "variable" 未定义:
(define-syntax blah
(ir-macro-transformer
(lambda (expr inject compare)
(when something
(do-something)))))
Error: during expansion of (blah ...) - unbound variable: when
我可以import
做什么来完成这项工作?
与(import-for-syntax chicken)
,一切就绪。