Re:mrustc: In-progress alternative Rust compiler (to C)
by Blikkentrekker on Sunday February 28, 2021 @04:34PM
(#26297287)
Certainly that could be automated quite easily.
I would assume that on such compilation farms that these systems generally use, this could be done very quickly.
Perhaps there would be an interest for the Rustc team to provide a recursive automated setup that is capable of compiling the latest Rustc from OCaml, and finally from C as well since one must follow a similar process with OCaml.
Re:mrustc: In-progress alternative Rust compiler (to C)
by LegionMammal978 on Sunday February 28, 2021 @04:44PM
(#26297374)
The automation for this is actually trickier than it would first appear: especially with the earlier snapshots, a number of patches are needed to compile the LLVM interfaces written in C++. Also, due to linking issues, some snapshots require a stage2 compiler, while others can only use a stage1 compiler. I agree that it would be trivial once you have the chain in place, but that chain can only be built through trial and error.
Re:mrustc: In-progress alternative Rust compiler (to C)
by Blikkentrekker on Sunday February 28, 2021 @05:24PM
(#26297686)
And no one has done this before?
Methinks that building this chain by trial and error is rather trivial compared to the actual work in building a compiler.
Re:mrustc: In-progress alternative Rust compiler (to C)
by qqii on Sunday February 28, 2021 @07:57PM
(#26298651)
Guix performed the bootstrap from mrustc 0.8 for rust 1.19 all the way to rust 1.28 in 2018: https://guix.gnu.org/en/blog/2018/bootstrapping-rust/
Since them they've bootstrapped this all the way to 1.50: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages...
The work done here is non trivial, this chain of versions are required for the final binary to be reproducible.
Re:mrustc: In-progress alternative Rust compiler (to C)
by sanxiyn on Sunday February 28, 2021 @05:32PM
(#26297736)
We are discussing mrustc here. The reason it hasn't been done yet is that nearly everyone interested in this agrees mrustc is a better bootstrapping path than starting from the last OCaml version.
Re:mrustc: In-progress alternative Rust compiler (to C)
by Blikkentrekker on Sunday February 28, 2021 @06:04PM
(#26297946)
That it's a better bootstrapping process for the user has no relationship with the ease of development for the developer.
Typically, they are inversely correlated.
Re:mrustc: In-progress alternative Rust compiler (to C)
by tedunangst on Sunday February 28, 2021 @05:24PM
(#26297682)
And when you port to a new CPU architecture you're going to backport those changes to 200 obsolete versions as well?
Being able to target a pretty recent version of Rust with a compiler written in C would be so, so useful for these purposes.