Rust 语言的底层是用什么编写的?

如题,百度了下没找到想要的结果?
不好意思错别字了:意思就是想了解下 Rust 使用什么语言编写的?例如 PHP 是用 C 写的,那 Rust 是用什么写的?

阅读 18.6k
3 个回答

@michael_cai 感谢 michael_cai 的回答

通常来说初代的编译器是会选择 C/C++ 之类的语言编写,然后后面的编译器会选择用 Rust 来重写。当然,编译器有其本身的复杂度,可能在某些组件上依赖了其他语言编写的组件(比如Rust现有的编译器就依赖了一个用 C++ 编写的linker)。

Rust编译器后端用的LLVM,LLVM官方提供支持的有C++和OCaml两种,Rust的开发者选择了OCaml实现了初版编译器,目前已经完全自举了。

新手上路,请多包涵

rust源文件编译成llvm IR,一种中间码,然后被转换成特定平台运行的机器码
rust可以自举,编译器也是用rust写的,源码在github上有

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进