【发布时间】:2011-07-02 16:05:02
【问题描述】:
我想获取工作 Clojure 源代码文件 (.clj) 并将它们自动转换为等效的 java 源代码文件 (.java)。我想知道最好的方法是什么,或者是否有可能。转换后的 java 源代码需要足够可接受。
【问题讨论】:
-
这绝对是可能,因为Clojure编译成JVM字节码,还有字节码到Java的反编译器。但有人怀疑并希望有一条更直接的途径可以产生更高质量的代码......
-
是的,我的意思是可以生成具有任何可读性的 Java 源代码。
-
请注意,您最终可能会依赖于 clojure 运行时库。
-
可能需要付出很多努力才能实现,但我强烈反对这个想法——自动翻译的代码通常很糟糕,人类无法维护。在 Clojure->Java 中情况会更糟,因为 Clojure 有很多在 Java 中不容易表达的结构(宏?eval?)。您已被警告!