←back to thread

611 points LorenDB | 9 comments | | HN request time: 0.62s | source | bottom
1. globalnode ◴[] No.43913379[source]
My admittedly uninformed impression of Rust is that its a lot like Go (in spirit?), a language invented to shepherd novice programmers into not making mistakes with resource usage.

I imagine faceless shameless mega-corps with thousands of Rust/Go peons coding away on the latest soulless business apps. Designed to funnel the ignorant masses down corridors of dark pattern click bait and confusing UX.

Having exposed my biases, happy to be proven wrong. Why are game studios still using C++? Because that's the language game programmers know and feel comfortable with? Or some other reason?

Embedded is still C, games are C++, scientific and data are Python and R (I'm talking in general here). What is the niche for Rust?

replies(6): >>43913433 #>>43913434 #>>43913444 #>>43913456 #>>43914112 #>>43914122 #
2. simonask ◴[] No.43913433[source]
Novice programmers will take longer to be productive in Rust compared to Go. Rust primarily improves the productivity of people who know what they are doing, because it gives them much better tools to manage complexity.

Games are written in C++ because game engines and tooling have person-centuries of work poured into them. Reimplementing Unreal Engine in Rust would require another few person-centuries of work, which is an investment that doesn't really make sense. Economically, dealing with the shortcomings of C++ is much, much cheaper.

But Rust is definitely encroaching in all of these areas. Embedded Rust is doing great, scientific Rust is getting there (check pola.rs). Rust is an obvious candidate for the next big game engine, and it is already quite viable for indie undertakings, though it is still early days.

replies(1): >>43914099 #
3. gwd ◴[] No.43913434[source]
> novice programmers

I think Rust has too high a learning curve, and too many features, for novice programmers in general.

> Embedded is still C, games are C++, scientific and data are Python and R (I'm talking in general here). What is the niche for Rust?

Rust has already made huge inroads in CLIs and TUIs, as far as I can tell. Embedded is a slow-moving beast by design, but it seems to me (as someone in an adjacent area) that it could be a big win there, particularly in places that need safety certification.

All the stories of people using Rust for game development are about people who tried it and find that it doesn't fit: It makes experimentation and exploration slow enough that the reduction in minor bugs in game logic isn't really worth it.

4. notimetorelax ◴[] No.43913444[source]
Those mega corps that you talk about use C++ too. It’s just a false dichotomy argument you’re making.
replies(1): >>43916460 #
5. chickenbuckcar ◴[] No.43913456[source]
Economic inertia alone can already enough.

Numpy use C/C++ because BLAS use C/C++ Torch originally use Lua, then switch to Python because popularity

6. amai ◴[] No.43914099[source]
Though in the future people might simply ask an AI to convert a codebase from C++ to Rust.
7. imtringued ◴[] No.43914112[source]
The quality of AMD's software stack speaks for itself. It's all C++ and the quality is exactly poor as you'd expect.
8. Havoc ◴[] No.43914122[source]
Go is seeing more traction in the web space - api backends and other stuff that needs lots of concurrency like that. Seen as easier to learn than rust but not quite as fine grained low level control.

Rust is a bit more systems focused for low level stuff. See inclusions in the Linux kernel. Also seeing some traction in the WASM space given that it’s not GC

They’re both quite versatile though so above are pretty gnarly generalisations.

Zig is in a similar space as these

9. globalnode ◴[] No.43916460[source]
True enough, I was going down a path there and got a little excited :S