最近尝试了各种lisp(特别是clojure),我想知道是否有任何基于S表达式的c子集表示,所以您可以使用lisp/闭包来编写宏,然后将S-表达式c树转换为纯c。我要求的不是lisp/ tree /clojure的to -c编译器,而是更多地使用lisp来转换c语法树。我问这个问题的背景很少:我发现自己非常喜欢某些clojure宏,比如线程宏、->、doto等等。
问题
我正在使用Clojure定义一个宏,它的工作方式类似于在java中尝试--它应该能够有一个绑定形式,例如变量值,它可以绑定到一个可关闭的实例。,我得到了一个我不明白的编译器。CompilerException clojure.lang.ArityException: Wrong number of args (1) passed to: core/safe, compilingprivate/var/folders/6f