This was a really good summary of what Rust feels like in my opinion. I'm still a beginner myself but I recognize what this article is saying very much.
The hacker news comments are as usual very good too:
What I said isn't even what I'd consider subjective. There is a very clear, logical, scientific reason for that. Not sure what you think I'm wrong about.
Can you give an example of why you think Rust just makes it needlessly hard to refactor?
I've worked in game dev so I get the point about iteration. It's not about doing proper reactors - it's about quick hacks to try something out. When your hack is good, then you do it properly - or maybe not at all if the hack works.
The respondents here are acting like code must be at all times provably correct and and Rust is great because it helps with that. That is indeed very cool but it's SLOW when you need quick iteration. It's not that you need to quickly iterate the code per so, it's usually the game experience you're iterating and that doesn't actually NEED code to be perfect or even good.
Ive used Rust professionally for six years now and have done many quick hacks. It is really easy to do. Basically just don't use references / clone everything to avoid lifetime and ownership issues, and use unwrap everywhere to avoid proper error handling. It's really that easy almost all the time.
The nice thing about that is once you're done with the prototype, just remove the unwraps and you can optimize stuff by removing the clones.
@kaffiene@asdfasdfasdf Its slow when you dont know what youŕe doing. For example, build a linked list in #rustlang is different then build one in java, because you can´t leave the variables in a wrong state. It's only a different approach, not a slow approach.
That's a sad attitude to have. Rust is really great, but it does have a learning curve. If you do want to give it a shot, just reach out online and there are many people who can help with suggestions.
@asdfasdfasdf@kaffiene As the friend above says, rust require some time and have a learning curve. Its very different, and thats why people gets strugling with the language. As you got proficience, it will save you hours of debug. I suffered with the learning curve also, but I needed to change the way I was think about how to program.
@asdfasdfasdf@kaffiene I think build a linked list is the last stage of learning rust, because linked lists has circular references that can lead to memory leaks and other memory issues. Build one with rust is hard, because the compiler will not easy for you to make mistakes, but if you can write a linked list, you can write anything in rust. Try this book.
Yeah it's sad that I just want to get stuff done and use the tools that are actually good at that. Point me to great Rust gamedev tools that are actually getting used to ship great games and I'll give them a go.
I think criticising people who raise valid issues about Rust in a context where it has no cut through and no depth says more about you, frankly. Programming languages aren't all good at everything and that's not a personal slight on you or the Rust communiry
@kaffiene@asdfasdfasdf i think part of the issue is that one group of devs is saying "rust is great for gamedev" by which they mean its a great language to develop games which are closer to game engines themselves in, or even custom engines. Then another group says "no it sucks" but they are talking about the scripting approach, where you don't care what happens under the hood
Rust fits the first group well, and the second not at all, and the issue is that both dont see the difference between
if you want to develop on the level of a engine, even if you're not makign a entire engine, Rust is IMO the most productive language. But these things also take a lot of time, which is why you don't see big games being finished. There are some like Tiny Glade where the devs built a entire custom renderer on the other hand.
Yeah, at this point I'm talking about Rust's fit as a general purpose language and being good at refactoring. I think Rust is great for both of those and that it isn't very subjective.
But regarding Rust for game dev, I have no idea. I have never done game dev, so it's definitely possible it isn't good for it for some reason.
I'm also saying scripting languages will break very easily when you refactor things. I didn't think that was that controversial...
@asdfasdfasdf i'm talking about gamedev sepcifically. there just hasnt been enough time for there to be a Unreal, Unity or Godot built for Rust as the main language. i don't think its clear beforehand that in that context it wont work, but you'd also have to solve the no stable ABI issue first.
Game engines need many years of time to develop to a point of what gamedevs coming from one of the big ones will expect, and there just hasnt been enough time yet to put in that effort.
@asdfasdfasdf as for scripting: no, thats not conteoversial. but this is abour gamedevs where languages like C# are used a lot, which is definitely not a scripting language