Applied C++ Meta-Programming




Applied C++ Meta-Programming

30 October 2018


Added 07-Jan-2019

The C++ language already supports a rich variety of programming paradigms; some intended, some serendipitous. This talk will look at how we can go further, combining and building on techniques new and old, to extend C++'s repertoire without recourse to compiler engineering.

Using Jim Coplien and Trygve Reenskaug's DCI paradigm as an example, this talk will present a conceptual framework and practical techniques for implementing such paradigms in today's C++.

C++ is a strongly class oriented language. We will consider how adding DCI's first class concepts of Contexts and Roles can open doors to new ways of structuring and thinking about C++ code.

Topics will include: reflection, meta-programming, object composition and code generation.