望着方式有些特殊形式展开:用户可以定义特殊形式的宏吗?
(macroexpand '(String. "foo"))
(macroexpand '('a))
;; etc
...并意识到他们是用宏实现让我好奇的是,什么是用户定义的宏的语法形式的限制。到目前为止,我所有的宏在语法形式上都与函数相似。不过,这将是可能的,例如,定义,像下面?:
(macroexpand '(myprintln-foo))
;;=> (println "foo")
(macroexpand '(myprintln-zoo))
;;=> (println "zoo")
请看更新。我的意思是,是否有可能以某种方式影响角色的标记和对构成令牌的认识。否则,在“String”的宏展开的情况下。我不清楚什么是扩展的宏名称(我不认为宏“字符串”是硬编码定义的) – 2013-03-04 18:53:53
这使得它更清晰,谢谢。我会编辑我的回复 – 2013-03-04 19:12:59