Tina Ulbrich: Generic Programming without (writing your own) Templates


Details
Generic programming is a technique where functions and data structures are defined as general as possible. The goal is that they work with different data types and therefore are reusable.
In C++ generic functions and data structures are typically realizes by using templates.
Templates are a great tool for generic programming but they come with their own set of challenges. They can be hard to read/write and influence complile times negatively. And sometimes they are even too generic. C++20's concepts can help with that but I want to show how you can be generic in your code without writing your own templates.
To do that, we will explore some C++17 and C++20 features from the standard library, like std::span, std::variant and std::any. I will explain what they are, where they are useful and how to use them.
I will also show some features you can find in other libraries, e.g. GSL.
Level: Beginner, Intermediate
We will stream the talk on our YouTube channel: https://www.youtube.com/channel/UCYWjo8yugqL9cqrOfYc22lg
Link to the stream: https://youtu.be/9YmeKO1f7mU
Afterwards everyone who has questions about the talk or wants to chat can join our jitsi server: https://meet.osna.social/osnacpp
This talk is a collaboration with die User Group Karsruhe:
https://www.meetup.com/de-DE/C-User-Group-Karlsruhe/
Please also check out their events.

Tina Ulbrich: Generic Programming without (writing your own) Templates