我试图弄清楚如何将列表中的值传递给宏。
例如:
(define l (list (list 1) (list 2) (list 3 4))) --> l = '((1) (2) (3 4))
(define-syntax myMacro
(syntax-rules ()
[(myMacro <expr> ...) (printf "~a\n" <expr> ...)]))
我将如何做到这一点?因为如果你尝试使用(apply myMacro l)
,你会得到一个错误的语法:myMacro警告。我怎么能这样做?
感谢所有帮助。感谢。