|
|
|
|
|
by dbaupp
4684 days ago
|
|
The compiler is pretty slow (although there's a big drive starting a few days ago to get certain aspects down (mostly compiling small files); because running the testsuite is so slow that work on the compiler is getting dragged down), but compiling the compiler itself is particularly bad: - it has to build LLVM: Rust currently has to use a custom version; the goal is for this to be unnecessary so that the system LLVM is ok. - it has to build itself and the standard libraries 3 times: rustc is written in Rust; so it has to bootstrap. - it eats a lot of memory, so bootstrapping on low memory systems is bad. Much of this is historical; the bootstrapped code means that large portions of the compiler are written when the language was less developed, and so is very non-idiomatic. It's progessively being modernised The first and last can be fixed; the second can't, at least until there are binary releases. |
|
Given my experience with compiler development, back when I was in the university, my expectations is that the second point would be pretty fast anyway, if the first and last issues are solved.
I have good experience with languages that use modules, some of them had bootstraped compilers like the Oberon family.
That is why I said I am hoping for these issues to be solved, as I think building LLVM is the main culprit.