Hacker News new | ask | show | jobs
by pjmlp 790 days ago
As proven by D, OCaml, F#, Delphi, Ada, C++23 (with modules, VC++/clang 18), it is a matter of toolchain.

What we need is a Rust interpreter, or having something like Cranelift properly integrated, to only depend on LLVM when doing release builds on the CI/CD.

1 comments

Having used Scala for some years with it's abysmal compile speed, I fear it has to do with complexity of the language and features, it was "implicit" in Scala, it might be the borrow checker in Rust (IANACG)
If you examine what takes time in the Rust compiler, the borrow checker is never a significant component.

The largest single bit tends to be codegen, which is why cargo check is so much faster than cargo build.

Ah!
Note that I left out Scala, while I included other languages of similar complexity, exactly because improving compile times has never been a major focus in Scala land, versus features.

Example, development effort wasted on Scala 3 Python like syntax.

There are several performance reports that show that the major culprit is the pile of LLVM IR sent to the backend.