我可以定义从左边获取一个参数而从宏的右边部分获得一个参数的宏吗?我想在我的程序中写一些这样的东西:
(test = 10)
定义新变量 我试着写那个宏:
(define-syntax =
(syntax-rules ()
((a _ b)
(define a b))))
但我的错误"语法错误:="
答案 0 :(得分:-1)
由于表单由第一个元素决定,因此test
没有绑定问题。
正确的方法是:
(= test 10)
你像这样编写宏:
(define-syntax =
(syntax-rules ()
((_ a b) (define a b))))
你去吧。没有可怕的中缀语法。