
On November 15, we invite all those who are not indifferent to C ++ to meet with colleagues in the framework of our project CoLaboratory. Residents of the C ++ User Group will focus exclusively on the practical side of using your favorite programming tool.
Let's talk on different topics. For example, how do clang and libtooling libraries help Kaspersky Lab automatically generate code? When will finally reflexes appear in C ++ and in what form will they fall into the standard? What pitfalls can be encountered in the design of a “thread pool” for a high-loaded system and, accordingly, how to deal with them?
')
The following performances are scheduled:
Automatic generation of source code using clangSergey Sadovnikov, our senior software architect, will talk about the technology of source code autogeneration based on the clang 3.9 API and the specialized library 'libtooling', which is part of clang. He plans to talk about a simple method of analyzing an existing set of C ++ source code and generating another set of source code based on it (for example, the functions of converting enum to strings and back). In addition, he will provide an example of developing from scratch a simple code generator, as well as describe how to integrate such a library into the build environment.
Reflection in C ++ NextThroughout the existence of C ++, the topic of compile-time reflection has been constantly discussed. But, unfortunately, the language standard still does not provide sufficient opportunities for extracting and manipulating compile-time information. I must say that to solve this problem, many libraries and preprocessors have already been pulled up, starting from simple macros and ending with Qt-moc or ODB. However, in his report, Anton Bikineev, another of our developers, will talk about the position of the Standardization Committee on this issue: what solutions were proposed and which became dominant.
Some approaches to thread poolingAlexander Borgardt, Architect / Team Lead from GolosCore, using the example from personal experience, will tell you why you should not design a thread pool before estimating the load profile and mathematical models, and also discuss how they are superimposed on a real system.
The event will be held on November 15 at 19:00 at our headquarters in the Olympia Park business center on Leningradskoye Highway 39A. To participate in the mitap you need to
register .