请在2024年Clojure状态调查!中分享您的想法。

欢迎!请参见关于页面了解如何使用此网站的相关信息。

0
编译器

我的意思是,生成的字节码是直接喂给JVM,还是一个.class文件被创建并保存字节码在那里?还有,如果生成了一个文件,它是为每个评估的表达式生成的吗?

1 答案

0

编辑

通常,所有Clojure代码都被编译为类中的字节码。如果从源代码运行,这将在动态地进行,并使用自定义类加载器加载。您可以可选地使用`compile`函数预先编译代码,并在磁盘上生成.class文件。

REPL中评估的一些简单顶层表达式简单地评估,而不进行编译和加载类。

“动态地”在“这是动态执行的”中的含义可能并不明确。
我认为值得提及的是,在这种情况下,字节码只存储在内存中,并没有保存到磁盘。
非常感谢!
...