4 ms·
Linux use is fixed to a specific version of Rust, not just an edition. Rust today is very different from Rust 0.8. And the changes in the last few years have g
by howinteresting 4y ago
Linux use is fixed to a specific version of Rust, not just an edition.
Rust today is very different from Rust 0.8. And the changes in the last few years have generally been small and in targeted areas that need work. It's nothing like Python in the old days.
Backwards compatibility is a thing for Rust as well. Almost all old code in existence works without modification in newer Rust. (The breaking changes are mostly soundness bugs, and possibly some type inference.)
- hu3 4y agoBut of course Linux kernel is fixed to a specific version of Rust. It needs unstable features [0]. Changing the version may break. Which reinforces dingosity's point about the language: > (Rust) needs to stabilize before it's used for critical infrastructure. [0] source: comments on https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=8aebac82933ff1a7c8eede18cab11e1115e2062b https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin... like this one: + A particular version of the Rust toolchain is required. Newer versions may or may not work because the kernel depends on some unstable Rust features, for the moment.
- howinteresting 4y agoStabilization in Rust provides much greater guarantees than stabilization in, say, Python. Once stable, the feature will never change.
- benatkin 4y agoThey decided it was good enough. It will be locked in for some time. Mainline Rust development will be separate but related to Linux Kernel Rust development. It will be like using TinyGo instead of Golang because you're doing WebAssembly or embedded.