Meeting C++ 2025
2025-11-06..2025-11-08
-- online --
[Meeting C++ 2014, Meeting C++ 2015, Meeting C++ 2016, Meeting C++ 2017, Meeting C++ 2018, Meeting C++ 2019, Meeting C++ 2020, Meeting C++ 2021, Meeting C++ 2022, Meeting C++ 2023, Meeting C++ 2024, Meeting C++ 2025]
| title | author | length |
|---|---|---|
| Binary Parsing, C++23 Style | Hari Prasad Manoharan | 42m |
Claims an embedded DSL that produces compile-time parser generation using C++23 template metaprogramming and constexpr, avoiding handwritten boilerplate or… | ||
| Hacking and Securing C++ | Marcell Juhasz | 01h 00m |
A simple microcontroller embedded device playground is used with a custom one‑byte‑type serial protocol to demonstrate concrete failures: uninitialized stack… | ||
| Hacking and Securing C++ | Marcell Juhasz | 01h 06m |
A small embedded device is built as a reproducible playground (project on GitHub, slides linked) and concrete exploits are demonstrated: stack reuse leaks… | ||
| Applied modern C++: efficient expression evaluator with type erasure | Olivia Quinet | 44m |
A working C++ expression evaluator uses type erasure with SSO and a parser-owned memory arena to store small literals in-place, plus constant simplification to… | ||
| The Misra C++:2023 Guidelines | Richard Kaiser | 57m |
MISRA C++:2023 updates MISRA to modern C++ and explicitly allows standard library containers while still forbidding raw new/delete and flagging unsafe patterns… | ||
| int != safe && int != ℤ | Peter Sommerlad | 01h 00m |
C++ int is shown to be unsafe: undefined behaviour on overflow and divide‑by‑zero, MISRA static checks miss cases, and plain promotions create surprising… | ||
| Building C++: It Doesn't Have to be Painful! | Nicole Patricia Mazzuca | 55m |
reMarkable rewrites its build system into a CMake library called rho that claims to make C++ builds declarative and incremental, handling platform quirks… | ||
| From Introductory to Advanced C++ - Learning Guidelines | Slobodan Dmitrovic | 01h 03m |
Says a practical learning path: start with language basics, then standard library essentials (containers, iterators, algorithms such as std::vector, std::find… | ||
| Back to the basics: Namespaces 101 | Sandor Dargo | 01h 00m |
Covers concrete rules and gotchas: the compiler’s qualified vs unqualified lookup order, how argument dependent lookup (ADL) pulls functions from argument… | ||
| How to understand modern C++ features in practice? Let's create a compiler! | Boguslaw Cyganek | 59m |
A small but complete FORTH compiler-interpreter is implemented in modern C++ and actually builds and runs; the project uses std::ranges and coroutines for… | ||
| "But my tests passed!" - Exploring C++ Test Suite Weaknesses with Mutation Testing | Nico Eichhorn | 46m |
Mutation testing is applied to C++ with a clang plugin and a CMake setup using mull to inject tiny operator changes into a 32-bit IEEE float addition… | ||
| Building Bridges: C++ Interop, Foreign Function Interfaces & ABI | Gareth Williamson | 52m |
Explains how C++ linking actually behaves and shows working tools and gotchas: uses bindgen to generate Rust bindings with static_asserts on sizes and offsets… | ||
| Binary compatibility 100 | Marc Mutz | 01h 02m |
Defines BC vs SC, shows concrete break examples (adding a defaulted arg breaks BC; adding an overload breaks SC when callers take addresses), and explains… | ||
| Persistence squared: persisting persistent data structures | Juan Pedro Bolivar Puente | 59m |
Library immer::persist serializes pools of immutable containers so structural sharing survives disk round trips rather than becoming independent JSON arrays… | ||
| Instruction Level Parallelism and Software Performance | Ivica Bogosavljevic | 01h 03m |
Claims that instruction dependencies, not CPU silicon, limit performance and that loads cost three cycles while adds cost one cycle are demonstrated with… | ||
| Real-time Safety — Guaranteed by the Compiler! | Anders Schau Knatten | 01h 01m |
Claim: compile-time guarantees for real-time safety via Clang 20 Function Effect Analysis plus the runtime checker RealtimeSanitizer. Demonstrations show… | ||
| CMake for the impatient | Steve Love | 55m |
A practical walkthrough shows CMake creating a simple executable that prints hello cmake and scaffolds both Visual Studio and Ninja/GCC builds (producing a… | ||
| C++ Contracts - a meaningful viable product | Andrei Zissu | 01h 02m |
After two decades of proposals, contracts enter C++26 as the P2900R14 Contracts MVP claiming language-level precondition/postcondition and statement-style… | ||
| The promise of static reflection in C++26: Type Traits without compiler intrinsics | Andrei Zissu | 01h 01m |
Claim: C++26 value-based static reflection can reproduce most standard type traits so libraries no longer need non‑portable compiler intrinsics. Evidence: a… | ||
| Missing (and future?) C++ range concepts | Jonathan Müller | 01h 00m |
Proposes concrete, implementable extensions to std::ranges: compile-time-sized ranges, contiguous chunks and a push-based customization point… | ||
| Range adaptors - 5 years after C++20 | Hannes Hauswedell | 01h 04m |
Ranges are large and specific: the talk argues that borrowing vs owning views is a real API-level distinction, documents that some adapters (filter) are… | ||
| Age of Empires: 25+ years of pathfinding problems with C++ | Raymi Klingers | 52m |
Covers a C++ pathfinding system live‑ported from 1997 to 64‑bit, tracing regressions caused by lost source history, removed 80‑bit extended precision (SIMD… | ||
| Speed for Free - current state of auto vectorizing compilers | Stefan Fuhrmann | 42m |
Auto-vectorization in recent compilers is now often usable at default O2 and can reach hardware limits for tight linear algebra (on the presenter’s Zen4 that’s… | ||
| Purging undefined behavior and Intel assumptions in Legacy Codebases | Roth Michaels | 01h 00m |
Claim: removing undefined behavior and Intel assumptions cuts maintenance and makes new platforms tractable. Evidence: concrete bugs (UI glyphs corrupted after… | ||
| Code Reviews: building better code and stronger teams | Sandor Dargo | 01h 01m |
Argues that code reviews measurably improve both code quality and team trust, evaluates objections like pairing or slow latency, and compares formats… | ||
| "Just switch the compiler", they said | Arne Mertz | 58m |
Describes concrete migration work: setting up new toolchains and CI, using Dockerized builds to run old and new compilers in parallel, tracking costly licenses… | ||
| From acrobatics to ergonomics: a field report on how to Make libraries helpful | Joel Falcou | 01h 03m |
Three to four years of building and rewriting produces concrete tactics: three libraries — EVE, KUMI, KIWAKU — implement SIMD abstractions, tuple algorithms… | ||
| Harnessing constexpr: a path to safer C++ | Mikhail Svetkin | 01h 04m |
Claims that using constexpr from C++11 through C++26 reduces UB and memory bugs, backed by examples where compilers reject integer overflow and dangling… | ||
| How to become obsolete | Roth Michaels | 01h 06m |
Shows how a lead intentionally makes themself replaceable by teaching pair programming and the Socratic method, running weekly one‑on‑ones, and sharing… | ||
| Monadic Operations in C++23 | Robert Schimkowitsch | 55m |
Concrete examples show how C++20/23 turns nested loops and error flags into composable pipelines using std::views::transform and std::views::join, and how… | ||
| Sanitize for your Sanity: Sanitizers tools for Modern C++ | Evgenii Seliverstov | 01h 00m |
Covers concrete results: how to instrumenting an application with GCC/LLVM flags, CMake and Conan toolchain tricks, and when rebuilding dependencies is… | ||
| C++23 tools you would actually use | Alex Dathskovsky | 01h 00m |
C++23 is stable and the presenter claims only 26% adoption so migration pressure is real; practical wins include richer feature-test macros and std::print in… | ||
| Towards Safety and Security in C++26 | Daniela Engert | 01h 02m |
C++26 promises concrete changes: P3471 standard library hardening adds boundary checks with a quick-enforcement option that stops execution, and… | ||
| (Don't) use coroutines for this | Ivan Čukić | 41m |
Shows concrete patterns and failure modes: using std::generator for lazy flows, building a heap‑free recursive VM by forcing initial_suspend and never_ready… | ||
| Embedded Friendly C++: Features That Make a Difference | Andreas Fertig | 01h 02m |
Concrete code: parsing MAC strings into a strongly typed array, packing floats into FP16, asserting no-padding with has_unique_object_representations, and… | ||
| The two memory models | Anders Schau Knatten | 01h 01m |
Clear, actionable comparison of the C++ memory model and CPU memory models with concrete examples: a producer/consumer ready flag example that shows why… | ||
| To err is human - error handling in C++26 | Sebastian Theophil | 59m |
C++26 adds concrete tools used here: std::expected for rich return values, contracts for configurable assertions, and hardened libraries plus stack traces for… | ||
| Why managing C++ dependencies is hard | Kerstin Keller | 01h 01m |
Project shows actual pain: a repository with 40 gigabytes of scattered DLLs, a six-month migration cost; dependency managers must resolve graphs, produce… | ||
| Cache Friendly C++ | Jonathan Müller | 01h 00m |
Claim: use std::vector by default because contiguous storage beats pointer chasing. Concrete evidence: benchmarks on Apple M1 show RAM ~70 GB/s, L1 ~64–128 KB… | ||
| The promise of static reflection in C++26: Type Traits without compiler intrinsics | Andrei Zissu | 01h 01m |
The promise of static reflection in C++26 Type: Traits without compiler intrinsics - Andrei Zissu - Meeting C++ 2025
Slides… | ||
| Unlocking the value of C++20 | Alex Dathskovsky | 01h 03m |
Concrete claims and runnable demos: 43% adoption statistic, assembler-level illustrations of performance, and a concrete claim of removed 4,000 lines via the… | ||
| A little Introduction to Control Flow Integrity | James McNellis | 01h 46m |
Concrete defenses and limits: memory protections (ASLR, NX) plus stack canaries reduce exploitability; hardware and compiler features aim to stop hijacking… | ||
| Stoopid Questions - about learning, teaching and AI | Frances Buontempo | 01h 28m |
Keynote claims that LLMs lack agency and cannot truly learn, cites the CACM piece, and argues AI helps and hinders learning; gives concrete tips for reading… | ||
| Software and Safety | Anthony Williams | 01h 05m |
Software runs in toasters, pacemakers and cars and different levels of harm demand IEC 61508 style evidence that code does not exhibit unintended behavior —… | ||
| To err is human - error handling in C++26 | Sebastian Theophil | 59m |
How error handling evolves with C++26 presented by Sebastian Theophil from @thinkcell
To err is human - error handling in C++26 - Sebastian Theophil - Meeting… | ||
| The real problem of C++ | Klaus Iglberger | 01h 05m |
Claim: modern C++ features and practices substantially eliminate common safety classes when actually used. Concrete fixes shown: rewrite nested loops with… | ||
| C++23: using std::generator in practice | Nicolai M. Josuttis | 01h 02m |
Explains that C++23 adds std::generator as the first standard coroutine interface, shows live code (generator-as-a-view, begin/++/ semantics), and builds… | ||
| Trees in C++ | Jens Weller | 09m |
Compares a naive pointer/new-delete binary tree against an index-based layout using vector+index nodes and shows the cache-friendly array wins in initial… | ||
| Start teaching C++ (to beginners!) | Hannah Lenk | 11m |
Claim: C++ is elegant and simple and should be used to teach programming fundamentals. Evidence: five years of university courses that teach C++ only… | ||
| Meet Qt | Ganesh Rengasamy | 04m |
A compact rundown of what was actually built and how: Qt is used to ship C++ GUI and headless apps with 50 different middleware and UI component libraries, a… | ||
| Vector to Array | Robin Savonen Söderholm | 05m |
Shows how C++20 constexpr std::vector lets a multi-pass algorithm that previously produced a heap-allocated vector become a compile-time constant copied into a… | ||
| Let them eat cake | Rahel Natalie Engel | 06m |
A small teaching language named Catpie exists to let one-day or multi-day workshops show realistic programming without installs, using a gamified cat scenario… | ||
| Our Most Treacherous Adversary | James McNellis | 05m |
Upgrading to a new Clang build Clang upgrade triggers crash when a tiny function that returns "true" or "false" begins segfaulting with a trashed stack. The… | ||
| PetriNet Studio - Architecting a SaaS Simulator in Modern C++ | Gabriel Valenzuela | 33m |
A cloud‑native Petri net simulator called PetriNet Studio is built with a modular microservices stack (React front end, Go gateway, RabbitMQ + MongoDB +… | ||
| Binary Parsing - C++23 Style! | Hari Prasad Manoharan | 46m |
Claims a self‑contained embedded DSL written with C++23 Template Metaprogramming that generates parsers at compile time without macros or external code… | ||
| Insights into Entity Component Systems | Helmut Hlavacs, Marlene Kasper | 49m |
Claims a working Vienna Entity Component System VECS that uses slot maps and archetypes to prioritize cache-friendly, per-frame throughput. Shows concrete… | ||
| Why use coroutines for asynchronous applications | Johan Vanslembrouck | 01h 05m |
Claims that C++20 coroutines let you write reactive, non‑blocking applications in a synchronous style and that the compiler hides complex control flow… | ||
| Command Line C++ Development | Mathew Benson | 01h 06m |
Practical command line workflow and concrete demos showing what gets built and why: compiling a hello world through g++/clang/clang++, inspecting preprocessing… | ||
| Designing an SPSC Lock free queue | Quasar Chunawala | 57m |
A concrete design surfaces: a working SPSC lock-free queue implemented with atomic head/tail indices, wraparound via power-of-two capacity (capacity = 2^N) and… | ||
| Casts in C++: To lie... and hopefully - to lie usefully | Patrice Roy | 01h 12m |
Concrete rules and runnable examples: which cast is zero-cost and static_cast is the go‑to, when to use dynamic_cast for runtime checks, when const_cast is the… | ||
| Does my C++ Object Model Work with a GPU and Can I Make It Safe | Erik Tomusk | 01h 01m |
Claims that C++’s local reasoning breaks on GPUs unless the API changes: OpenCL and Vulkan expose explicit resource graphs so RAII and invariants get tangled… | ||
| The Code is Documentation Enough | Tina Ulbrich | 52m |
Explains concrete techniques: rename variables and functions to reveal roles, extract small functions to keep one level of abstraction, and write unit tests… | ||
| nothing matches | ||