5 ms·
Rust's 1.0 was 2015. It's been 9 years. It's been adopted for core components in Firefox, and Chromium/Android are likewise moving towards adopting Rust. In ge
by computably 2y ago
Rust's 1.0 was 2015. It's been 9 years.
It's been adopted for core components in Firefox, and Chromium/Android are likewise moving towards adopting Rust. In general, Rust has seen broad industry adoption from the likes of FAANG, M$, etc.
As far as I know, while alternatives like Zig may have their merits, they are simply nowhere close to Rust in terms of maturity and adoption. Not only would it take a decade for them to play catch-up, there's huge uncertainty around whether they will ever reach that point. So even if you assume Rust is approximately average on whatever technical axes, pragmatic concerns suggest it's the only real option.
Of course, one can always argue Linux has no need to adopt any new language. I don't think there is any serious concern that Linux will end up with no C programmers left to write kernel code.
- masfoobar 2y ago> Rust's 1.0 was 2015. It's been 9 years. That is still pretty young... and just because something has reached 1.0 (lets say ready for production use) does not mean there wont be any major changes following it. As I mentioned, I am not a Rust programmer, but I would not be surprised there has been a lot of changes since 1.0 -- and, potentially, if you had a kernel with lots of Rust code.. trying to do upgrades is likely going to be a lot more work when compared to a language like C. When you compare Rust to something like Odin - this is a language that attempts to be a proper improvement over C without the typical gotchas or quirks that C has kept for many years. It does not add new features for the sake of it... it is generally "complete" despite not reaching version 1.0 (though it is used in production software) https://x.com/jakubtomsu_/status/1808091029188567497 https://x.com/jakubtomsu_/status/1808091029188567497 > I don't think there is any serious concern that Linux will end up with no C programmers left to write kernel code That isn't what I was saying. I am just being realistic that in order for Linux to thrive for the next 30 years, we have to accept that the younger generation are not likely focusing on the C language. There will be many, of course -- but could be significantly less than the numbers today. With this, I think this is the main reason, with Linus in his mid-50s now, why Rust has been accepted. In my opinion, if Linus was still in his early 30s today, he might have rejected Rust the same way as he has C++.
- mustache_kimono 2y ago> When you compare Rust to something like Odin Should there be some duty to approach reality in these comments? Odin and Zig are interesting, but they are niche compared to Rust, right now. I say this knowing Rust is pretty niche itself! But Rust is on a different planet right now compared to where Odin and Zig are, etc. > In my opinion, if Linus was still in his early 30s today, he might have rejected Rust the same way as he has C++. I'm not sure what this says about Linus in his 30s, or the current retrogressive mood of certain C programmers. Whatever it is -- it is a (cosmic!) appeal to authority instead of a well reasoned analysis of why we should listen to this speculative Linus in his 30s, instead of Linus today.
- masfoobar 2y ago> Should there be some duty to approach reality in these comments? What is wrong comparing Odin to Rust... or Zig to Rust.. or Zig to Odin? These languages exists and should not be ignored simply for being labeled as `niche` The previous commenter referred Rust as being stable because it was version 1.0 nearly 10 years ago.. and I responded why this does not mean as much as people think. From 1.0 to (now) 1.80.1 -- how much change has Rust gone through? I would take a guess and say A LOT! I am sure Rust will get more changes in the next 10 years! This is why I think adding Rust to the kernel is 10 years premature. How much changes will need to be done to the Rust code in the next 10 years... I am guessing a lot. Comparing that with C, it is now going through the process of moving from C89 to C11. Once moved to C11 is unlikely to move for quite some time. Just because I bring up Odin and make (valid) points why it is a better C.. does not imply I think it should be added to the Kernel. It is a young language (like Zig) and I think they both have an interesting future ahead of them. I am just as interested seeing their journey in the next 10 years.. not just Rust. > I'm not sure what this says about Linus in his 30s I am just stating that it is hard to know REALLY what Linus thinks about Rust. I use Age as an example because he is likely making decisions, whether he agrees or not, for the future of the kernel beyond himself. He wont be maintainer forever. Thats all I say/write on this.
- mustache_kimono 2y ago
- troad 2y ago> It's been adopted for core components in Firefox, and Chromium/Android are likewise moving towards adopting Rust. In general, Rust has seen broad industry adoption from the likes of FAANG, M$, etc. Rust has seen slight interest, but saying that companies like Microsoft are 'moving towards adopting Rust' is just flat out wrong (you realise MS make their own language stack, right? and that it's far more used than Rust?). There's probably more ActionScript 3 in production at MS than Rust. On the nine year point, your assumption appears to be that Zig is trying to learn from Rust and is behind, but I'm not sure what you're basing this on. Zig isn't trying to do what Rust does, and has no reason to try to relive Rust's growing pains - instead, Zig is trying sand away the rougher edges of C. Zig is not chasing nine years of Rust, it's building on fifty years of C. Imho, the momentum isn't for moving to Rust, the momentum is for trying to bring memory safety to systems programming (as distinct from most other programming, where GC'd languages are already dominant). Personally, I quite like Rust, but these are early days, and it is not yet clear that Rust will be the language that wins this fight. The history of computing is littered with examples of the slightly less elegant but more practical tool triumphing over the pure but inflexible one.
- masfoobar 2y ago> I quite like Rust, but these are early days, and it is not yet clear that Rust will be the language that wins this fight There has been a number of languages in 20 years that have been given hype - some more than others... yet slowly disappear into the corner. Ruby and Clojure are 2 examples in the last 13 years. Today, I rarely hear about them (though I am sure they could still be popular in certain places) To me, Rust is different to these examples.. and more comparable to the sort of hype and popularity Java got back in the 90s. Point is Rust is not going away like these other examples... and the fact Microsoft has included Rust in their kernel (like Linux as and, I believe, BSD) tells you a lot. Microsoft are likely to still push their stack (.NET, etc) for frontend development. However, for their low-level+high performance codebase, likely behind their azure infrastructure, I would not be surprised if they start going with Rust. Personally, I would love to see languages like Odin and Zig be more popular but I think Rust is going to dominate many areas in programming. Does not mean Zig or Odin wont be successful, it just wont get that fanbase Rust has, imo. The question you have to ask (like Java) is -- is it really the best choice for its features... or by its push/popularity.