

I don’t think it’s a fair characterization. To my understanding there were specific concerns about contracts. Hopefully these will get resolved, or contracts will be moved to C++29.


I don’t think it’s a fair characterization. To my understanding there were specific concerns about contracts. Hopefully these will get resolved, or contracts will be moved to C++29.


I do agree and I think it’s wise to narrow C++ down by a lot, and that is a choice you can make when working on a new project.


Well, I mentioned safe in the comparative degree. Modern C++ could be actually safe if you restrict yourself to a subset of it, that’s sometimes not really practical. I do think that things are improving and with C++26 it’s becoming way easier to write perfectly (memory-)safe code that’s also (subjectively) elegant.


I very strongly disagree. It’s practically a superset for backwards compatibility reasons but modern C++ coding patterns are vastly different to C. Modern English is kind of a superset of Shakespearean English, but you don’t need to know it for most daily tasks. C++ is much more elegant and safe when avoiding C patterns. C has its place and I use it sometimes, but the two should absolutely not get confused because of the name and compatibility.
I came here to say exactly these two things 😂