It makes the code icky and hard to debug, and you can simply return new
immutable objects for every state change. EDIT: why not just create a new object
and reassign variable to point to the new object
That’s a fair point. I have learned so many programming languages and continue to enjoy learning about weird ones that these relatively minor syntax design decisions do not seem like they should be dealbreakers to me, but that likewise means that I am also not the one that they have to worry about appeasing when designing the syntax to attempt to maximize adoption.
It’s certainly a sticking point. People complain about Rust syntax all the time.
Personally, I think its syntax is about as close to C++ syntax as it can be without inheriting some truly horrendous decisions.
That’s a fair point. I have learned so many programming languages and continue to enjoy learning about weird ones that these relatively minor syntax design decisions do not seem like they should be dealbreakers to me, but that likewise means that I am also not the one that they have to worry about appeasing when designing the syntax to attempt to maximize adoption.