Could it be, that many desicions for Rust have been made to make it more appealing to C devs?
Like, opting out of purity annotations or forced immutability?
I'm not saying these desicions are good or bad, I don't know much about system programming. But I often ask myself what the main motivators for a language are.
FWIW,after spending a couple of years with rust as my primary programming language, I'm convinced that they made the right decision wrt mutability (immutable by default, but mutability availale when needed), as rust's lifetime system eliminates nearly all the remaining pain points around mutability (data races).
On the other hand, I think it is very important that some notion of purity be incorporated, even if only as an opt-in.
Like, opting out of purity annotations or forced immutability?
I'm not saying these desicions are good or bad, I don't know much about system programming. But I often ask myself what the main motivators for a language are.