And even if you do get to use pure modern C++ you’ll still get burned by subtle cases of undefined behavior (e.g. you probably haven’t memorized every iterator invalidation rule for every container type) that force you to spend weeks debugging an inexplicable crash that happened in production but can only be recreated in 1/10000 runs of your test suite, but vanishes entirely if you compile in debug mode and try to use gdb.
Sorry to be pedantic but Rust only guarantees no data races can happen. It does not prevent race conditions more generally.
Don’t get me wrong, I absolutely love the language for sparing me from the hell that is data races, but the language alone won’t solve race conditions for you.
And even if you do get to use pure modern C++ you’ll still get burned by subtle cases of undefined behavior (e.g. you probably haven’t memorized every iterator invalidation rule for every container type) that force you to spend weeks debugging an inexplicable crash that happened in production but can only be recreated in 1/10000 runs of your test suite, but vanishes entirely if you compile in debug mode and try to use gdb.
“Test suite”?
I’m not sure if you’re genuinely asking what a test suite is or if this is a sarcistic joke about how no one bothers to test their C++ code.
This is why I moved over to Rust
🦀🦀🦀🦀🦀🦀🦀🦀
Rustacean supremacy (not to be racist, because we avoid race conditions in the first place)
Sorry to be pedantic but Rust only guarantees no data races can happen. It does not prevent race conditions more generally.
Don’t get me wrong, I absolutely love the language for sparing me from the hell that is data races, but the language alone won’t solve race conditions for you.
Man, you had to go and rain on my parade. 😞