Articles by experts are saught after the most. Therefore, here are the links to the articles written by some of my favorite authors (in no particular order).
It's official: C++11 has two meta-programming languages embedded in it! One is based on templates and other one using constexpr . Templates have been extensively used for meta-programming in C++03. C++11 now gives you one more option of writing compile-time meta-programs using constexpr . The capabilities differ, however. The meta-programming language that uses templates was discovered accidently and since then countless techniques have been developed. It is a pure functional language which allows you to manipulate compile-time integral literals and types but not floating point literals. Most people find the syntax of template meta-programming quite abominable because meta-functions must be implemented as structures and nested typedefs. Compile-time performance is also a pain point for this language feature. The generalized constant expressions (constexpr for short) feature allows C++11 compiler to peek into the implementation of a function (even classes) and perform optimization...
Comments
I think you should add stanley lippman in that list as well-although he hasn't written for a long time.
his articles:
http://msdn.microsoft.com/en-us/magazine/cc159481.aspx
and his blog, consisting of his old articles:
http://blogs.msdn.com/slippman/
keep up the good work, you are one of the few people encouraging me to put up with c++ :P
Thanks for your encouragement! Adding Stan Lippman in the list makes perfect sense. I'm wondering why his name did not pop up in my head.
One very good reason to stay up-to-date with latest C++ is the upcoming C++09 standard (http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2008/n2565.html) which will take C++ to a whole new level of power and complexity!
- Sumant.
Thanks for your encouragement! Adding Stan Lippman in the list makes perfect sense. I'm wondering why his name did not pop up in my head.
gclub