Hacker News new | past | comments | ask | show | jobs | submit login

The source of complexity is in the problems C++ is designed to solve. I use C++ metaprogramming for problems that require it.

Sure, Boost is full of metaprogramming insanity, but with today's C++ standard library it's not necessary to use Boost.

10 years ago template heavy code in C++ did suck, because we had slow compilers, dumb build systems, 7200 rpm HDDs and a need to use Boost to augment the bare bones standard library.

I'll be the first to admit that C++ has decades of cruft and design errors. But the metaprogramming works pretty well now. C++'s current problems are (IMO) weird undefined behavior, e.g. the distinction between POD and non-POD types; having both pointers and references, the ancient exception system, and in general a lack of tools for enforcing memory safety.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: