5 ms·
I think at this point Rust is the winner just because it's already overcome the incredible hurdles of being shipped in the Linux and Windows kernels themselves.
by VWWHFSfQ 3y ago
I think at this point Rust is the winner just because it's already overcome the incredible hurdles of being shipped in the Linux and Windows kernels themselves. In that regard, I doubt there's room for any more of these new systems languages now.
- bsaul 3y agoI have the intuition that rust can’t possibly be the winner, it really feels too crude regarding the way it manages lifetimes. It really feels like the clumsy grandparent of the language that will indeed solve those problems elegantly.
- germandiago 3y agoSame opinion here. Let us look at Val and Vale. There is also Carbon and CppFront but those are more of C++ evolution than new-born things.
- lolinder 3y agoBut we made do with C for how many years? OP's question isn't whether Rust is as good as systems languages will get, the question is whether any successor language stands a chance of being included in the kernels. The bad ergonomics of C were never enough to get another language into the Linux kernel, it took a language that solves the number one class of security bugs. It's unclear that any successor to Rust will be able to show as clear a need.
- xwowsersx 3y agoThat's not how I read OP's question. OP was wondering whether a lang besides Rust can be "the winner" (unqualified) given that Rust has already passed the hurdle of being included in the kernel. It didn't sound like at all like their question was limited to whether there's room for another lang in the kernel.
- kjs3 3y agoBut we made do with C for how many years? K&R C was, what, 1972...and it's 2023 now. So that's 51 years with no definitive end of 'making do' in sight.
- thfuran 3y agoBut isn't it worth spending a few years poking around before we lock ourselves into fifty more years of bad ergonomics, now that things have clearly reached the point where there's credible motion towards a C alternative?
- pornel 3y agoRust's lifetimes have a steep (un)learning curve, but once you know what you're doing, they're fine. Really. IMHO Rust has ergonomic problems around effects or generic numeric code, but not memory management. AFAIK no silver bullet has been discovered yet that would be an improvement over Rust that doesn't have some other trade-off. Val's mutable value semantics is more local and limited. It "solves" the problem of ugly lifetime annotations by not supporting complex zero-cost lifetimes at all. That doesn't mean Val can't be successful — it can be easier to use by supporting simpler constructs and focusing less on zero-cost abstractions, like Swift, but its ideas aren't stop-the-presses for Rust. We're already overdue for having a more modern, practical replacement for C. Waiting for a hypothetical better-than-Rust language will only mean staying with C for even longer.
- forrestthewoods 3y ago> the question is whether any successor language stands a chance of being included in the kernels Uhh no. No that is not “the question”. My question is “what language will I use to write video games”. C++ sucks and Rust isn’t a great fit.
- 3836293648 3y agoRust is fine in an ecs engine like Bevy. Absolutely awful in traditional oop setups though.
- forrestthewoods 3y agoBevy is very cool and I follow it closely. It has yet to ship a meaningful project.
- aldanor 3y agoNot sure what you mean by "traditional oop setups" and why anyone should care about it, that's more of an outdated design pattern and a bad choice of the past than a desired language feature.
- omgmajk 3y agoI guess Jai aims to move into the gamedev space of this, but the language has a terrible presence online https://inductive.no/jai/ https://inductive.no/jai/
- forrestthewoods 3y agoI wrote a large blog post about Jai. https://www.forrestthewoods.com/blog/learning-jai-via-advent-of-code/ https://www.forrestthewoods.com/blog/learning-jai-via-advent... It’s a very interesting language that does a lot of things “very right”. But it’s also a long ways from being broadly available.
- omgmajk 3y agoI like your style of writing :) - I watched a bunch of youtubers use it to do various things and was impressed but really I just want them to have a website and a way to sign up for beta easily so I can play with it too.
- pjmlp 3y agoAda already existed, politics and a free beer compiler ecosystem also helped.
- tormeh 3y agoLike what happened with Java. Once a language has accumulated enough popularity it’s extremely hard to depose it, due to network effects. The switching costs are enormous.
- IlliOnato 3y agoThe role of Rust in the Linux kernel is so far extremely limited, it's more of an experiment than a production tool at the moment. I don't think that the "window of opportunity" for another language in the kernel has closed. If anything, Rust has shown what would be the hurdles to overcome, so it may inform the next attempt if it happens. And of course Linux is not the only kernel out there, and new kernels can also arise.