I think this is especially true for C++ - it takes a decade to become proficient with C++. And at the end of that decade you should realize that there's still a lot you don't know.
Of course, we could argue that if a language takes 10 years to get to proficiency that there's probably something wrong (and in the case of C++ I would tend to agree).
No, UncleOxidant, it is definitely not "especially true for C++". There are plenty of powerful languages out there, many with more subtleties than C++, and longer roads to mastery.
No one disputes that C++ has a long road to mastery, but there are plenty of other languages for which that is true. So, C++ is not special in that way.
Haskell probably has a long road to mastery. That said I think it might still be shorter than that for C++. it is hard to think of a language that takes longer than c++ to master. Interesting!
Fair enough. I found haskell easier than c++ to grok. It may have helped that I had a good grasp on type theory before I learned Haskell (worked through TAPL a few years ago). Subjectively, I found the various components of Haskell almost always fit together in very logical fashion with a very clean syntax, while C++ felt arbitrary, (with exceptions to every rule and exceptions to those exceptions and exceptions to those). I share your intent of not starting a language war. Just expressing my experience.
Of course, there can be no objective measure easily made, and I do not want to engage in language wars.
That said, I am a C++ expert, but contend that each of Lisp, Haskell, and Scala are far deeper languages, with more involved in their mastery than C++.
Of course, we could argue that if a language takes 10 years to get to proficiency that there's probably something wrong (and in the case of C++ I would tend to agree).