Warsaw C++ Users: Unifikacja typów i wartości w metaprogramowaniu C++
Details
(English version below)
Już w środę, 29 października, zapraszamy na kolejne spotkanie (i pierwsze w tym semestrze) grupy Warsaw C++ Users, w sali 3180 (https://mimuw.edu.pl/en/location/?room=3180).
Widzimy się o 18:30, zakończymy około 20:30, po prezentacjach będzie czas na pizzę i rozmowy.
Wydarzenie jest otwarte dla wszystkich zainteresowanych C++, także osób spoza wydziału i spoza UW, bez względu na poziom doświadczenia.
*Spotkanie w języku angielskim.*
18:30 Drzwi otwarte
18:35 Powitanie i informacje organizacyjne - Jakub Panasiuk
18:45 "Unifikacja typów i wartości w kontekście metaprogramowania w C++ oraz innych języków programowania" - Andrzej Radzimiński
Unifikacja typów i wartości to koncepcja obecna w części nowoczesnych języków, oferująca alternatywny sposób wyrażania rozwiązań, które w C++ tradycyjnie osiągamy przez metaprogramowanie szablonowe. Pokażemy, na czym polega ta unifikacja, jak wypada na tle szablonów i jak łączy się z podejściem opartym o wartości. Zobaczymy, jak uzyskać metaprogramowanie oparte o wartości w C++23 (bez refleksji) oraz jak wspiera je refleksja w C++26. Będzie też krótkie wprowadzenie do metaprogramowania w C++ i kilka nieoczywistych przykładów z praktyki.
20:15 Pizza i networking! 🍕
O Prelegencie:
Andrzej to doktorant na MIM UW, zajmuje się językami programowania oraz konstrukcją kompilatorów. Członek zespołu rozwijającego język programowania Duckling.
-----
Join us on Wednesday, October 29 for the next (and first in this semester) in-person Warsaw C++ Users group meeting, live in room 3180 (https://mimuw.edu.pl/en/location/?room=3180).
Doors open at 18:30 and we’ll wrap up around 20:30 and after the talk there will be time for pizza and networking.
The meeting is open to everyone interested in C++, including attendees from outside the faculty and outside the University of Warsaw, regardless of experience level.
*The meeting will be held in English.*
18:30 Doors open
18:35 Welcome & housekeeping - Jakub Panasiuk
18:45 "Type-Value unification in context of C++ metaprogramming and recent programming languages" - Andrzej Radzimiński
Type–value unification shows up in several modern languages and offers an alternative to solutions C++ typically expresses via template metaprogramming. We’ll outline what this unification is, how it compares to templates, and how it connects to value-based metaprogramming. You’ll see how value-based metaprogramming is achievable in C++23 (without reflection) and how reflection enables it in C++26. We’ll also include a brief primer on C++ metaprogramming plus a few surprising, real-world examples.
20:15 Pizza and networking! 🍕
About the speaker:
Andrzej is a PhD student at MIM UW, focusing on programming languages and compiler construction. Member of the team developing the Duckling programming language.
