C/C++已經統治系統編程很久,除了ObjectiveC之外語言都無法獲得很高的關注。有人用多種系統級語言編寫了同樣的地圖生成工具來測試他們的性能,包括D(DMD,LDC,GDC)、Go(GCC-Go,6g)、Haskell(GHC)和Rust。相比C/C++,這些語言都原生支持了諸如垃圾回收這些高級特性,也因此無一能達到C/C++的運行速度。
其中表現最好的是基於LLVM的D語言編譯器LDC,與同樣基於LLVM的C編譯器Clang相比,可以達到它96%的速度。其次是基於LLVM的Rust編譯器,達到了89%。因為LLVM編譯的優化做的太好,即使GCC都只能達到Clang 72%。另一個令人驚訝的結果是,基於JVM的Scala竟然能達到Clang70%的速度。幾乎相當於GCC。
Compiler Speed(s) %Fastest Clang 0.280 100% LDC 0.292 96% Rustc 0.316 89% Scala 0.375 75% GCC 0.390 72% LLVM-GHC 0.428 65% 6g 0.544 51% GHC 0.546 51% DMD 0.640 37% GCCGO 0.850 33%