根据我的理解,julia是一种带有JIT编译器的脚本语言。但是在java中,你可以找到*.class
个文件;在python中,您可以找到*.pyc
个文件。这意味着java和python首先需要将其语言转换为字节码,然后使用VM来运行此字节码。但是,我找不到julia的字节码文件,如*.jlc
。有什么想法吗?
答案 0 :(得分:3)
实际上有一些功能可以在Julia中转储LLVM bitcode:
请参阅jl_dump_bitcode
。
感谢Isiah指出可以使用code_llvm
来读取解释器中的bitcode。
请注意,在julia_trampoline
中使用此功能,具体取决于build_path
选项。然而,这对我来说似乎不是最终用户界面。
与NodeJS(V8)等其他基于JIT的软件相比,技术上可以转储LLVM bitcode。
答案 1 :(得分:0)
手册中涵盖了这一点:http://docs.julialang.org/en/release-0.5/devdocs/eval/
Leah Hanson撰写了一篇精彩的文章here,介绍Julia执行的从Julia代码到本地汇编代码的5个步骤: