30 October 2018
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.