为什么即使在Ocaml中实现了第一个Rust编译器,Rust的性能还是比Ocaml快

kan*_*udo -2 c++ compiler-construction performance compilation rust

我发现最初的Rust语言编译器是用Ocaml编写的。所以我以为Rust将与Ocaml的性能类似。但是当我查看基准Ocaml与C ++以及Rust与C ++并将Ocaml与Rust进行比较时。它给了我什么...?,但是怎么...?

即使Rust源自Ocaml,如何将Rust的性能比Ocaml更快?

然后它引起了另一个问题?

从C派生的基于编译器的语言是否可以比C本身的性能更快?

Ayx*_*xan 12

编译器只是生成将要运行的(机器)代码。生成的程序无法在其编译器所用的语言之上运行。因此,特定实现的性能与其所使用的语言之间没有关联。

  • @MatthieuM。根据他们的[网站](https://ocaml.org/learn/tutorials/garbage_collection.html)“ ... OCaml提供了垃圾回收器,因此您无需像C / C ++那样显式分配和释放内存。 。” 这也可能是其性能落后于Rust和C ++的原因 (2认同)