4 ms·
Why do they want to make the kernel even more complicated? Now to contribute not only you have to learn C, but also Rust and get their complex dev environment
by Shadonototro 5y ago
Why do they want to make the kernel even more complicated?
Now to contribute not only you have to learn C, but also Rust and get their complex dev environment setup..
This fragmentation is very bad, seems like they embrace the linux distro spirit.. what's gonna be tomorrow? zig support?
Lot of effort wasted in making things more complicated, definitely not a positive move
- diegocg 5y agoWell, if there is a competition to replace C it would be interesting to see some competition.
- authorityofnil 5y agoI feel Rust offers several strong points whilst actually being performant and widespread enough to be in the kernel. I doubt you absolutely _need_ to know both to work on specific parts written in either
- ladyattis 5y agoI think Rust support should be in a more experimental branch for the kernel first before even thinking of adding it to the main code base. Mostly because I think it needs more supporting code and documentation to get people on board with such an inclusion: complexity or not.
- rswail 5y ago"linux-next" is the experimental branch for the kernel. "The linux-next tree is the holding area for patches aimed at the next kernel merge window. If you're doing bleeding edge kernel development, you may want to work from that tree rather than Linus Torvalds' mainline tree. " https://www.kernel.org/doc/man-pages/linux-next.html https://www.kernel.org/doc/man-pages/linux-next.html
- drexlspivey 5y agoOn the flip side you can now contribute if you know rust but not C
- _ph_ 5y agoThis is a bigger point than it might sound. While "learning C" doesn't sound like a huge task, learning C well enough not to create disasters when working on a kernel, is a huge undertaking and requires a lot of experience. Being able to do kernel development in Rust should lower the entry barier into kernel a lot. Because it has more high level constructs and especially for all the safety Rust brings. Any competent programmer should be much more comfortable to start kernel dev with Rust than with C.
- rvz 5y agoYes. You now are going to have two languages + bolting on a kernel riddled with chronic security holes and still supporting dead architectures and 32 bit systems. Well see if brown-fielding Rust into the Linux Kernel is all worth it for them.
- deviledeggs 5y agoC is a terrible language. It's portable assembly. I've done some small OSS projects in C and as soon as I realized Rust was stable enough I tossed them and rewrote in Rust. Rust feels like a modern language, like Go or C#. C is barely better than FORTRAN. I'm massively more productive in Rust and I don't have to worry about a million ways of causing UB or memory bugs. Everything from dependency management to testing to cross compiling are dreamy in Rust compared to C.
- kilodeca 5y agoHuman went to moon with Assembly.
- deviledeggs 5y agoWe voyaged the world in wooden boats for a long time too. It was absurdly laborious and dangerous.
- pjmlp 5y agoActually you could have achieved most of that with Ada, Modula-2, Mesa/Cedar, Object Pascal, but we had to wait for the pendulum to get back.
- dthul 5y agoI agree that Rust, besides its technical excellence based on all of these prior languages, also hit a sweet spot with its timing.
- deviledeggs 5y agoOh definitely. Rust was the first to be trendy enough to get traction though. I'm not bashing previous attempts to replace c. Dependency management, packaging, and testing are what really made Rust take off. The best of any language I've used.