In his talk Jason Turner proposed to break the C++ ABI to keep the language moving forward. He also mentioned that if needed due to compatibility reasons, C++ ABI changes can be isolated by wrapping a C++ library into a C library.
A relevant screenshot at 27:30:
Here "BinaryLibrary" and "Old C++ stdlib" use an old ABI, and "NewExecutable" uses a hypothetical updated ABI.
As far as I understand, this works since old C++ ABI of "BinaryLibrary" gets baked into a separate binary with a more stable interface.
But what makes C a good alternative? Can't its ABI change as well?
