Clojure 中的嵌套准引用处理规则是什么?我正在编写一个 Lisp 变体,其中符号是卫生的(自动生成符号)。我得到了使用 auto gensym 的单级准引用,但我不确定何时进入两级或更多级嵌套。
如何处理带有可嵌套卫生符号的准引号?
扩展的一般规则是什么?例子:
(quasiquote (quasiquote (unquote (quasiquote (unquote (unquote-splice x))))))
(quasiquote (quasiquote (unquote (quasiquote (unquote (unquote x))))))
(def a '(1 2))
``~`~~a