3 ms·
I’ll never understand the portion of the C++ community that insists on modernizing the language to the detriment of everything else. When is enough enough? Ju
by SaxonRobber 7y ago
I’ll never understand the portion of the C++ community that insists on modernizing the language to the detriment of everything else. When is enough enough? Just let the language be and focus on improving the standard library, not changing language features.
- google234123 7y agoYou do realized that the standard library is also specified? You can't change bad things in the std without breaking backward compatibility.
- SaxonRobber 7y agoI mean standardizing libraries that are widely useful for minimizing external dependencies. Like networking support, serialization for ubiquitous formats like JSON, etc.
- beached_whale 7y agoYou are missing the point. Almost all of this has to do with the binary compatibility of the std library, not the core language. Things like unordered_map/map cannot be improved because the binaries would not longer be compatible. lock_guard could not go from one mutex to one or more because it would have a different name in the symbol table for some compilers, so we get a new scoped_lock that adds another name to do the same thing. push_back on vector cannot return a reference as does emplace_back for similar reasons too. All of those would leave the source code compatible, but break linking, often silently. These are some of the ones off the top of my head, there are more. So the fix in these cases is another name, and that has the problem of making the language needlessly more complicated and harder to learn.