4 ms·
Going to great lengths to avoid writing Rust.
by marinintim 8y ago
Going to great lengths to avoid writing Rust.
- stcredzero 8y agoWould the world be a better place if Linux, the BSD kernel behind OS X, and the Windows kernel were all rewritten in Rust? (I don't think it would be dramatically better overnight.)
- c1yd3i 8y agoIt would be better overnight. But it would be even better if we had one NT like kernel and a new OS built from scratch with a browser (webkit) based ui.
- stcredzero 8y agoa new OS built from scratch with a browser (webkit) based ui So basically, ChromeOS rewritten in Rust? Why not a Servo based UI?
- cjmaria 8y agoThe hard part is the NT-like kernel in Rust, not the web-based UI. ChromeOS uses the linux kernel.
- sanxiyn 8y agoIf we could do this by waving a wand without downsides (e.g. all existing maintainers magically acquire Rust knowledge, etc.), yes it would be better. No question. Seriously, people, you can find kernel bugs at will with kernel fuzzers like syzkaller from Google. Look at https://github.com/google/syzkaller/blob/master/docs/found_bugs.md https://github.com/google/syzkaller/blob/master/docs/found_b... and weep.
- AnimalMuppet 8y agoIf the Linux kernel writers all instantly knew Rust as well as they know C, then in 10 years they might produce something that is as functional as the Linux kernel currently is. In the process, they would lose everything that they could do over the next ten years to improve the Linux kernel. You could claim that eventually the payoff would pay back the lost 10 years. But "eventually" can be a very long time...
- wk_end 8y agoThis is about verifying the compiler, not proving any properties of the generated code. Totally orthogonal to Rust's aims, unless the Rust compiler has been formally verified (I don't believe it has).
- steveklabnik 8y agoIt has not.
- strangecasts 8y agoThere has been work to verify a subset of Rust's logic - https://plv.mpi-sws.org/rustbelt/popl18/ https://plv.mpi-sws.org/rustbelt/popl18/ - but the compiler itself is not verified, no.