Similarly, I think that most programmers today don’t believe that C
and C++ can be replaced with safe languages. But C and C++ are just
programming languages. Of course they can be replaced! In some sense
we have been working on replacing C and C++ before they even existed.
Every programming language is a competitor to every other programming
language.

For example, there’s no question that Java has replaced C/C++ in a
huge swath of enterprise software. If Java didn’t exist, that
software would have been written in C++.

Similarly, there’s a lot of software being written today in
Go instead of C/C++, particularly in the DevOps
world. That community would have been a stronghold of C/C++ in the
past.

If programmers are willing to rely on garbage collection for an
application, they are not going to use C/C++. You can use garbage
collection with C/C++ but no one is doing this. Once you accept
garbage collection it’s clear that there are better languages out
there, languages designed with garbage collection in mind. And, not
coincidentally, they are safe languages.