3 ms·
The problem is that there is no way to reduce complexity in a programming language that is serious about backward compatibility. C++ now has close to 30 years o
by golemotron 12y ago
The problem is that there is no way to reduce complexity in a programming language that is serious about backward compatibility. C++ now has close to 30 years of non-trivial additions built on the craggy basis of backward compatibility with C and its own feature set.
In the early 1990s, it was complex. The Annotated Reference Manual that was used as the de facto standard was full of edge cases and detail that required a great deal of study. No other language since has approached that level of complexity and I'm talking about what it was like before templates.
I sincerely believe that C++'s downfall is underway and it comes from a very simple fact - it's increasingly hard (read impossible) for new C++ programmers to go from zero knowledge of the language to being able to read and maintain modern C++ programs that have taken full advantage of the feature set over the past decades.
- pjmlp 12y agoYes it is complex, but you can say the same about almost any modern language. If the language is not complex, then it is the eco-system.
- golemotron 12y agoYes, but on balance, I think that ecosystem complexity is both more tractable and addressable than language complexity.
- pjmlp 12y agoI think it is relative. An ecosystem can also be quite complex, specially if it changes often. Any newcomer will face the exact situation not knowing what to use, what is no longer best practice or what should be avoided.