While I agree that C++ templates when used for anything but simple type generalization, are a gross, gross part of C++. I'd hardly call that core to the C++ syntax.
You're welcome to feel that way, but template abuse is simply a given with 99% of the C++ that crosses my screen these days. It's pervasive in Boost, it's pervasive in the STL (especially in C++11), it's pervasive in libraries like ATL and WTL. You can write C++ that avoids these parts of the language, but you are in the distinct minority in doing so. I think my complaint about C++ syntax is fair.
I'd hardly call the STL, ATL, or WTL particularly heinous abuses of the template system.. And the syntax, is in general, pretty reasonable... Boost on the other hand...
You're welcome to feel that way, but template abuse is simply a given with 99% of the C++ that crosses my screen these days. It's pervasive in Boost, it's pervasive in the STL (especially in C++11), it's pervasive in libraries like ATL and WTL. You can write C++ that avoids these parts of the language, but you are in the distinct minority in doing so. I think my complaint about C++ syntax is fair.