3 ms·
Rust in the kernel is still an experiment, you can't lead in a direction that doesn't exist. The "nontechnical nonsense" is actually the more important and more
by incrudible 2y ago
Rust in the kernel is still an experiment, you can't lead in a direction that doesn't exist. The "nontechnical nonsense" is actually the more important and more difficult part of software development.
My feeling about Rust is that it's a playground language where many ideas are tried and insights can be formed, but it needs to be distilled down to something simpler with a stable ABI to be used for something like Linux. Moreover, why be "afraid some other kernel will do to it what it did to Unix"? Wouldn't it be great if Linux could be replaced by something better? Why not pursue that direction?
- mustache_kimono 2y ago> Rust in the kernel is still an experiment, you can't lead in a direction that doesn't exist. "There go my people, I must find out where they are going so I can lead them." > [B]ut it needs to be distilled down to something simpler with a stable ABI to be used for something like Linux. Why? I really not understanding a practical reason why that would be necessary. > Moreover, why be "afraid some other kernel will do to it what it did to Unix"? Wouldn't it be great if Linux could be replaced by something better? Why not pursue that direction? It's mostly a ridiculous alternative in the here and now. People use Linux, right now, although a fine thing to do. People want a memory safe language to write drivers and filesystems in the kernel, right now. It makes lots of sense to write use Rust in the Linux kernel, right now. So maybe? It still takes lots of work of make something like that happen? I'd love if the entire RfL team played hard ball, relicensed their contributions as MIT/ISC/BSD, and moved to FreeBSD or illumos or began contributing to RedoxOS, but I wouldn't expect anything new for awhile.
- pornel 2y ago> My feeling about Rust is that it's a playground language where many ideas are tried and insights can be formed No, from the very beginning this has been an explicit non-goal of Rust. http://venge.net/graydon/talks/intro-talk-2.pdf http://venge.net/graydon/talks/intro-talk-2.pdf Rust has used reaserch from 80s and 90s languages. The result may seem novel because the programming language theory and languages that Rust copied are not well known among systems programmers. The ideas are old, Rust added the polish and packaging of the features with a focus on practical non-reaserch use. Rust isn't that new any more. 1.0 has been released almost a decade ago.
- anonfordays 2y ago>Rust isn't that new any more. 1.0 has been released almost a decade ago. And yet I have to use nightly to get practically anything to work.
- steveklabnik 2y agoWhat features do you rely on? This is effectively the opposite of my experience, which is why I am curious: even our embedded OS at work is almost free of nightly features, and everything higher in the stack has been on stable for a long time. Always interested in learning how experiences differ!
- anonfordays 2y ago>is almost free of nightly features So it's not free of said features and you have to use nightly? >What features do you rely on? Several of these highlighted here:https://blog.rust-lang.org/2024/02/19/2023-Rust-Annual-Survey-2023-results.html https://blog.rust-lang.org/2024/02/19/2023-Rust-Annual-Surve... Something like 30% of users were on nightly a few years ago. Not sure if that's still true, but it is for me.
- steveklabnik 2y agoYes, for that OS we’re using asm_const, which is almost stable, naked functions, and used_with_arg, which is linker related. We also use array_methods but that could be polyfilled, if the other three were stable.
- pornel 2y agocrates.io sees about 13% of requests from nightly compilers, although that may be biased by CI tests that just check for future compatibility rather than needing nightly features. https://lib.rs/stats#rustc-usage https://lib.rs/stats#rustc-usage For application development nightly hasn't been necessary for many years now. Places where people use nightly are increasingly just nice to haves and small optimizations.