Doctoral candidate (Ph.D.c.) at the Computer Science department of the Faculty of Mathematics, University of Belgrade with main research revolving around the programming language design.
Have been a long time KDE contributor mainly working on the Plasma workspace, and lower-level frameworks for tracking and managing user actions. Maintainer of KActivities, Contour daemon and Lancelot.
C++ has always had a powerful meta-programming sub-language which allowed library developers to perform magical feats like static introspection to achieve polymorhpic execution without inheritance. The problem was that the syntax was awkward and unnecessarily verbose which made learning meta-programming a daunting task.
With the recent improvements to the standard, and with the features planned for C++20, meta-programming has become much easier, and meta-programs became easier to understand and reason about.
In this talk, we will present a few modern techniques of meta-programming, with main focus on the magical void_t meta-function.