6 ms·
There is a version of C++ that adds complete memory safety to the language by adding features to the language in a way that preserves complete backwards compati
by Kranar 1y ago
There is a version of C++ that adds complete memory safety to the language by adding features to the language in a way that preserves complete backwards compatibility with existing C++ source code. That version of C++ is called Circle/Safe C++, it represents a monumental amount of effort that was written by a single individual, and it's a complete disgrace that the C++ committee has informally shut the door on that individual:
https://safecpp.org/draft.html https://safecpp.org/draft.html
- LoganDark 1y ago> it's a complete disgrace that the C++ committee has informally shut the door on that individual What do you mean?
- Kranar 1y agoThe committee very politely showed him the door.
- LoganDark 1y agoYes, I got that much, but I'm curious to see what happened. Do you have any links about it?
- aw1621107 1y agoThe interpretation is probably up for some debate especially since meeting details are not public, but some relevant links are: - The P3390R0 Safe C++ proposal and the related vote in the 2024-11 Wrocław meeting: https://github.com/cplusplus/papers/issues/2045 https://github.com/cplusplus/papers/issues/2045 - The adoption of the paper P3466 R1 (Re)affirm design principles for future C++ evolution at the same meeting, which contains language which can be interpreted as preemptively foreclosing a Safe C++-style approach: https://github.com/cplusplus/papers/issues/2121 https://github.com/cplusplus/papers/issues/2121
- tialaramex 1y agoP3466 resulted in a new Standing Document for the committee. SD-10 https://isocpp.org/std/standing-documents/sd-10-language-evolution-principles https://isocpp.org/std/standing-documents/sd-10-language-evo... The idea in this document was to write down "principles" of the C++ language without regard to annoying facts which might put those principles in doubt.
- jb1991 1y agoWhich individual are you referring to?
- aw1621107 1y agoAlmost certainly Sean Baxter, the person behind the Safe C++ proposal and its reference implementation (via Circle, which also implements some unrelated features)
- tempodox 1y agoThere is even a reference implementation, so it could be added to existing compilers? That would at the very least be better than what we have now.
- aw1621107 1y ago> There is even a reference implementation, so it could be added to existing compilers? I don't think it would be that straightforwards since this is one of those changes which depends pretty heavily on compiler internals, unlike library-only reference implementations. It'd be like taking a reference implementation in Clang and "adding it" to GCC/MSVC.