6
我一直在编写Common Lisp宏,所以Scheme的R5Rs宏对我来说有点不自然。我想我计上心,但我不明白怎么一会用向量模式语法规则:在语法规则中如何使用矢量模式?
(define-syntax mac
(syntax-rules()
((maC#(a b c d))
(let()
(display a)
(newline)
(display d)
(newline)))))
(expand '(maC#(1 2 3 4))) ;; Chicken's expand-full extension shows macroexpansion
=> (let746() (display747 1) (newline748) (display747 4) (newline748))
我不知道我怎么会用一个需要它的参数的宏写成一个向量:
(maC#(1 2 3 4))
=>
1
4
是否有某种技术使用这些模式?
谢谢!
谢谢!现在它变得更有意义了! :-) – Jay 2010-04-01 04:12:07