4 ms·
Yes, perhaps a C-only Linux would do that and die, and perhaps it would continue its customization of C flavor and runtime it uses (e.g., the various static and
by starspangled 2y ago
Yes, perhaps a C-only Linux would do that and die, and perhaps it would continue its customization of C flavor and runtime it uses (e.g., the various static and dynamic memory limitations and checkers) and closes the gap with Rust to a point where the incremental benefit of using it is not significant enough that it makes a Rust based competitor an inevitability. We may already be beyond that point, even.
- Philpax 2y agoThe changes required to bring C to a Rust level of safety would make it an entirely different language, even when restricted to the kernel's domain. Also, if you're already doing codebase-specific patches to the language itself, many of the arguments around codebase portability that justify the use of C fall apart. Aside from that, there are other benefits to Rust than safety: it's better at modelling data and states, as the now-infamous filesystem talk [0] outlined. [0]: https://lwn.net/Articles/978738/ https://lwn.net/Articles/978738/
- starspangled 2y ago> The changes required to bring C to a Rust level of safety would make it an entirely different language, even when restricted to the kernel's domain. Maybe. 1. It may not have to be "Rust-level of safety" to be good enough to make Rust benefit less compelling. 2. Linux C is already a different languag than C, continued incremental changes might be a better way to get there than adding Rust even if it does become very different in the end. > Also, if you're already doing codebase-specific patches to the language itself, many of the arguments around codebase portability that justify the use of C fall apart. Sure, but Linux never had a "codebase portability" argument. It always had to be GCC C. It eventually made some relatively small changes to allow clang to compile it, the far bulk of that work being changing of clang to behave like GCC. > Aside from that, there are other benefits to Rust than safety: it's better at modelling data and states, as the now-infamous filesystem talk [0] outlined. Yeah, it's not only safety improvements that are in Linux-C.
- hulitu 2y ago> The changes required to bring C to a Rust level of safety cough* Cargo cough* /s You cannot have safety or security when you download your code from the internet and this code is a moving target.
- steveklabnik 2y agoThe kernel does not use Cargo.
- hulitu 2y agoFor the moment./s
- ivell 2y agoOr may be Zig might be more acceptable to the Kernal team, once it becomes mature enough?