Sean Baxter not only wrote his own C++ compiler, but he authored this magnificent vision paper for the future of C++ that it moved me to reconsider my views on the safety of the language and its use future projects.

Seldom a man of my age and opinions can change his mind over something so fundamental.

Enjoy: https://github.com/seanbaxter/circle/blob/master/new-circle/README.md

circle/new-circle/README.md at master · seanbaxter/circle

The compiler is available for download. Get it! Contribute to seanbaxter/circle development by creating an account on GitHub.

GitHub

@Migueldeicaza It is really easy for people like me to think of C++ as what it was like a quarter century ago. But modern C++ and the kinds of tooling described there and elsewhere show that there is no reason to discard C++.

I still favor #Rust for new projects, but I agree that a great deal of prejudice against C++ is based on outdated assumptions.

@jpgoldberg @Migueldeicaza
The problem with so called modern C++ is that it has to interoperate with old C/C++ codebases, which limits the use of modern techniques, and there isn't a way to have a clear boundary between safe and unsafe code the way #Rust does it.
@hjvt @jpgoldberg @Migueldeicaza you can usually get to the point of using modern C++ constructs only in new code by constraining the scope of the legacy code and providing wrappers (much like you would in Rust). The modern code is still full of pitfalls and tricky semantics (and no safe/unsafe distinction as you say)