Talk type: Talk

Lightning Talks

  • Talk in Russian

Lightning talks are a great format to discuss a topic in a dynamic way and find like-minded people. 20-minute talks on professional topics and lively discussions will be waiting for you.

(N)RVO: what it is and how not to break it — Vania Khodor

I will tell you about (N)RVO in C++. I will show cases when it works and when it doesn't. I will give examples of how you can understand if this ‘optimisation’ works in your code and how you can detect it with the help of AST Clang research to be sure. I will give recommendations on how to write code as efficiently as possible from the viewpoint of these C++ peculiarities.

The talk will be useful for every C++ developer. It will help you understand this ‘optimisation’ a bit deeper and no longer think about whether you should move an object at return to make everything efficient.

Detecting logical errors with the help of type system using parameterised types — Roman Ustinov

I will tell you how an extended set of types allows you to check a programme for correctness. How these types can be abstracted using parameterised types and how parameters of parameterised types can signal the context in which a given value is allowed to be used. 

I will use the process of creating a graphic editor in C++ as an example, but this particular application task is not directly related to the topic of the talk.

LLVM and experience of using it — Roman Badmaev

On the example of creating an internal programming language, I will demonstrate the practical side of using the LLVM library. I will offer a new abstraction layer on top of it that simplifies compiler creation. I will analyse the main pros and cons of the approach.