Wednesday 

Room 2 

13:40 - 14:40 

(UTC+02

Talk (60 min)

Iteration in C++: From Regular Loops to Powerful Metaprogramming Idioms

Iteration in programming – what could be simpler? Well, in C++, it’s a bit more complex than it seems.

C++

With four kinds of loops, ranges, and even the infamous goto statement, there’s a lot more under the hood. Add to that the variety of collections – vectors, maps, stacks, and more – and each can require a different iteration technique. Some patterns are less efficient; others may introduce subtle, hard-to-detect bugs.


But iteration in C++ doesn’t stop with conventional loops. What happens when you need to iterate over a variadic parameter pack or a heterogeneous container like std::tuple? These situations require more advanced techniques, and standard patterns often fall short.


In this talk, we’ll explore the full spectrum of iteration in C++. From basic constructs to powerful metaprogramming idioms, we’ll revisit this fundamental concept with fresh eyes.

Vitaly Fanaskov

Vitaly is a principal software engineer at reMarkable. He has been designing and developing software using C++ and some other languages for over a decade. Primary areas of interest are design and development of frameworks and libraries, modern programming languages, and functional programming.
Vitaly holds a PhD in Computer Science from the Moscow State Mining University.