~/conference

CppCon 2024

date:2024-09-15..2024-09-20
location:Aurora, United States
series:CppCon · 11 editions
titleauthorlength
C++26 Preview - The Smaller FeaturesJeff Garland01h 02m
C++26 is two-thirds through design and many items already appear in the working draft and in compilers: precise edits include compile-time diagnostics via…
Talk on
Building Cppcheck - What We Learned from 17 Years of DevelopmentDaniel Marjamäki53m
Seventeen years of development produces concrete changes: a custom preprocessor now split out as SimpleCPP, a symbol database, syntax tree and a reusable…
Talk on
C++ Coroutines and Structured Concurrency in PracticeDmitry Prokoptsev53m
Describes an open-source runtime called Corral framework that applies structured concurrency to real I/O-bound production code, interoperates with existing…
Talk on
Introduction to Wait-free Algorithms in C++ ProgrammingDaniel Anderson01h 05m
Claims a concrete wait-free design for a “sticky” atomic counter in C++ that uses atomics (compare-exchange, fetch_add/fetch_sub, exchange), compare-exchange…
Talk on
C++ Design Patterns - The Most Common Misconceptions (2 of N)Klaus Iglberger01h 01m
States which common claims are wrong and why: std::variant is not a drop‑in replacement for virtual functions (it gives a closed set of types and different…
Talk on
Work Contracts - Rethinking Task Based Concurrency & Parallelism for Low Latency C++Michael A Maniscalco01h 08m
Work Contracts replaces task queues with a compact, lock‑free (often wait‑free) signal tree that lets threads traverse different branches to claim work…
Talk on
Async Stacks: Making Senders and Coroutines DebuggableIan Petersen, Jessica Wong59m
Claims a concrete debugging feature: runtime async stack frames that capture return address when senders are constructed, stored in operation state, and…
Talk on
Vectorizing Computational Fluid Dynamics (CFD) Code in C++ Using std::simdOlaf Krzikalla01h 00m
Vectorizes a real CFD code with std::simd plus a small complementary library that makes loads/stores look like scalar code (implemented as a macro). Changes…
Talk on
How to Use the Sender/Receiver Framework in C++ to Create a Simple HTTP ServerDietmar Kühl01h 03m
Live-codes a minimal single‑threaded HTTP server that actually runs: uses the sender/receiver model (C++26 execution) plus matching networking senders from the…
Talk on
Perspectives on Contracts for C++Lisa Lippincott57m
A concrete proposal (P2900) aims to add contracts to C++26 with fuller support in C++29, specifying preconditions, postconditions, and contract assert and a…
Talk on
Cpp Contracts - How Contracts in C++26 Can Improve C++ Code Safety and CorrectnessTimur Doumler01h 03m
Proposal p2900 defines a Contracts MVP for C++26 that adds p2900 function preconditions, postconditions and contract-assert statements, a replaceable contract…
Talk on
How to Improve the Safety of C++ Code With a Quantities & Units LibraryMateusz Pusz01h 03m
A Modern C++ quantities library claims concrete safety: mp-units implements P2981 to make unit errors fail at compile time, catches truncation when converting…
Talk on
How to Design a Slimmer Vector of Variants in C++Christopher Fretz57m
Starts from a real case where std::vector<std::variant<...>> blows up from ~20 KB to a theoretical minimum of 37 bytes and builds a working C++20 replacement…
Talk on
Refactoring C++ Code for Unit testing with Dependency InjectionPeter Muldoon01h 02m
Shows concrete DI techniques and their tradeoffs: link-time substitution works but is brittle and discouraged, inheritance and interfaces give rich mocks…
Talk on
ISO C++ Standards Committee Panel Discussion 2024Herb Sutter01h 35m
Panelists list concrete progress and pain points: C++26 aims to ship contracts and reflection but contracts split across many purposes (about 196 use cases)…
Panel on
Boost Your Intra-Process Communication Programs With C++20 & Contract-Concept-Implementation PatternArian Ajdari45m
Claims a concrete pattern: Concept-Constraint-Implementation (CCI) pattern plus C++20 concepts wrap low-level sdbus IPC calls into types that enforce…
Talk on
Performance Optimization in Software Development - Being Friendly to Your HardwareIgnas Bagdonas01h 05m
Claim: real-world hardware limits matter — memory goodput sits around ~10% of theoretical, DDR capacitor speed barely improves across generations, and…
Talk on
Rollback System in C++ for Online Multiplayer GamesElias Farhan01h 03m
A concrete C++20 implementation appears on GitHub and uses SDL2 spine Photon FMOD and fmt to run on PC Linux and Nintendo Switch while shipping a simple custom…
Talk on
Recent Concurrency and Parallelism Proposals to the C++ Standard CommitteePaul E. McKenney, Maged M. Michael, Michael S Wong01h 09m
Proposal P0493 adds fetch_max/fetch_min atomics (and hints at later floating‑point variants) with hardware-backed speedups; P3135 extends hazard pointers with…
Talk on
Numerical Integrators From Scratch in C++Vincent Reverdy01h 06m
Revisits numerical integrators by deriving them from first principles and mapping those formulas to C++ concepts to get C++26 reflection–driven, compile‑time…
Talk on
C++/Rust Interop: A Practical Guide to Bridging the Gap Between C++ and RustTyler Weaver53m
Shows concrete bridges: implements manual bindings with C FFI (create/delete pair, opaque Rust type stored in C++ unique_ptr) and contrasts that with CXX code…
Talk on
Moved-from Objects in C++Jon Kalb01h 07m
Argues that C++’s core is uncompromising performance achieved by allowing undefined behavior, then drills into move semantics: moved-from objects are partially…
Talk on
Deciphering C++ Coroutines Part 2 - Mastering Asynchronous Control FlowAndreas Weis01h 00m
Claims a practical pattern for turning C++20 stackless coroutines into a stackful async model by storing coroutine_handles in promises and linking them into a…
Talk on
Template-less Metaprogramming in C++Kris Jusiak01h 03m
Claim: a template-less metaprogramming style generates and manipulates types using values not angle‑bracket recursion. Implementation is ~100 lines of C++17…
Talk on
Modern C++ Development: Limitations and Problems in std::function and Similar ConstructsAmandeep Chawla01h 03m
Claims that std::function, std::packaged_task and std::apply cause unexpected copies and moves and demonstrates them with an instrumented class that logs every…
Talk on
How to Quickly Convert Floating-Point Numbers in C++Cassio Neri56m
Introduces Dragonbox, a new algorithm that outputs decimal shortest-roundtrip strings, implements round-trip safety with explicit permissible-interval math and…
Talk on
How to Hide C++ Implementation DetailsAmir Kirsh01h 02m
Shows concrete failures and fixes: why public data members like std::pair and struct fields bite generic code, how to let callers mutate map values but not…
Talk on
Lightweight Operator Fusion Using Data-Centric Function Interfaces in C++Manya Bansal01h 00m
Describes a concrete system called Fern that enriches function signatures with data production and consumption patterns so a generator emits fused C++ code…
Talk on
Lightning Talk: C++ and Rust Bindings - Mixing It Best With CMakeDamien Buhl08m
Recipe for mixing C++ and Rust with CMake: a concrete example builds a cargo library named Mixology, adds the regex and cxx crates, and exposes Rust code to…
Lightning on
Lightning Talk: Every Use Case of Colon and Ellipses in C++Ali Almutawa Jr.05m
Claims to enumerate every use of colon and ellipses but instead composes a single C++ line that strings together global scope resolution, a lambda, a…
Lightning on
Lightning Talk: Do You Love or Hate Your C++ Build System?Helen Altshuler06m
Claims that Bazel gives hermetic action graph behavior with incremental no‑clean rebuilds and easy parallelism, and that EngFlow (a build acceleration…
Lightning on
Lightning Talk: Generative C++Alon Wolf04m
Claims compile-time generation of real C++ source and modules: classes, reflection metadata, interfaces and GLSL shaders are produced and compiled into the…
Lightning on
Lightning Talk: Remote Execution Caching Compiler (RECC) for C++ BuildsShivam Bairoliya06m
RECC wraps compiler calls and computes deterministic cache keys from exact compiler flags plus a Merkle of sources and headers then it either returns cached…
Lightning on
Lightning Talk: What Does a CMake Developer Want From CMake?Ben Boeckel05m
A grab bag of concrete requests: persistent typed variables so lists, paths and JSON keep their identity instead of re-parsing strings; a ninja-style rules…
Lightning on
Lightning Talk: What LLMs Won't Ever be Able to DoBen Deane07m
Claims that LLMs fail at cryptic crosswords, backed by a live test: ChatGPT is given clues, produces a wrong answer, accepts correction but could not justify…
Lightning on
Lightning Talk: C++ in the Cloud: One NIF at a Time with ElixirSakshi Verma05m
C++ code compiles into a shared library (named lib_exj_boost in the example) and is called from Elixir via Native Implemented Functions to reuse an optimized…
Lightning on
Lightning Talk: The Present and Future of Cross-Platform GUI in C++Matt Aber05m
Desktop apps now lean on Node.js/web stacks and suffer huge memory and binary bloat from bundling Chromium and Node, while cross‑compiling C++ to wasm breaks…
Lightning on
Lightning Talk: Micro C++ Benchmarks & Murphy's LawLexington Brill05m
Claims concrete fixes for nanosecond-scale measurements: use rdtsc/rdtscp rather than chrono where possible, disable P-States/C-States/turbo, pin threads and…
Lightning on
Lightning Talk: DevSecOps for C++? Keep Calm and use ConanLuis Caro Campos06m
Shows that Conan source backups preserve removed sources, that conan graph info exposes why a transitive package exists, and that a full graph of 40+…
Lightning on
Lightning Talk: The Main Points in C++ - Dots in C++Miodrag Misha Djukic05m
Counts and concrete examples decide: one point (dot) has about three to four uses (floating literals, member access, pointer-to-member syntax, module names)…
Lightning on
Lightning Talk: The UB Detector: constexprAndreas Fertig07m
Claim that a constexpr evaluation forbids undefined behaviour is false: C++20 code using std::views::filter, mutating elements so they no longer satisfy the…
Lightning on
Lightning Talk: Improving an HTML Parser with Swift 6 Pattern MatchingAndrew Kaster06m
A C++ HTML tokenizer for Ladybird LibWeb is rewired into Swift 6 pattern matching and choice types, replacing a macro-heavy giant switch with small functions…
Lightning on
Lightning Talk: Can't we Just Synthesize std::tuple_element From Get?Jonathan Müller06m
Claims synthesis: std::tuple_element can be computed as decltype(get(obj)) so structured bindings wouldn’t need separate specializations. Implements a detector…
Lightning on
Lightning Talk: Saturday Is Coming Faster - Convert year_month_day to Weekday Faster - Part 1Cassio Neri06m
Claims up to 3× faster conversion from year_month_day to weekday, with a concrete algorithm and assembly evidence rather than handwaving. Implementation exists…
Lightning on
Saturday Is Coming Faster - Convert year_month_day to Weekday Faster - Part 2Cassio Neri06m
Claims a new calendar routine that converts year_month_day to weekday up to 3x faster than the usual chrono path and shows the actual arithmetic behind it…
Lightning on
Customizing Compilation Error Messages Using C++ ConceptsPatrick Roberts05m
Uses C++20 named concepts plus a static reflection library to turn misspelled member-name errors into actionable suggestions by doing compile-time string…
Lightning on
How Far Should You Indent Your Code? - The Number Of The CountingDave Steffen06m
Clear claim: three spaces is the sweet spot between common two and four indent styles. Evidence includes a quick team vote that split two vs four, then adopted…
Lightning on
Chplx - Bridging Chapel and C++ for Enhanced Asynchronous Many-Task ProgrammingShreyas Atre05m
Chplx claims a working Chplx bridge that translates Chapel to C++ via a source-to-source translator integrated with CMake, implemented in three passes that…
Lightning on
Using PMR in C++ Embedded Systems for Functional SafetyScott Dixon06m
Argues C++17 PMR lets safety-critical firmware use stdlib types by enforcing memory partitioning and predictable behavior: uses a 01 Heap allocator that is…
Lightning on
Strategies for Developing Safety-Critical Software in C++Emily Durie-Johnson07m
Practical takeaways: developing for Medtronic-style medical devices requires concrete processes not platitudes — adherence to IEC 14971 and 62304, limiting…
Lightning on
Brainplus: A User ExperienceBraden Ganetsky07m
Brainplus is an expression template parser combinator C++20 library that compiles and runs, using a single plus identifier and user-defined literals to parse…
Lightning on
When Computers Can't Math - Floating Point Rounding Error ExplainedElizabeth Harasymiw02m
Explains why 0.1 + 2 does not equal 3 by showing how IEEE 754 32-bit float splits into 1 sign bit, 8 exponent bits, 23 fraction bits, how 0.1 becomes a binary…
Lightning on
Just the Cliff Notes: A C++ Mentorship AdventureAlexandria Hernandez Mann06m
Four months of mentorship turn a GitHub with a lone python script and spaghetti C++ homework into documented code by September 2024, with hands‑on work in…
Lightning on
Rust Programming in 5 MinutesTyler Weaver03m
Claims that Rust stops a recurring class of weekend‑long debugging sessions by enforcing ownership and borrowing at compile time, demonstrates a five‑minute…
Lightning on
From Macro to Micro in C++Conor Spilsbury06m
Real data shows repeated microsecond spikes traced to container resizing rather than vague "load" issues, backed by added timers and a perf profile that…
Lightning on
Amortized O(1) Complexity in C++Andreas Weis06m
Shows how amortized analysis works with concrete examples: uses the accounting method (coins) to analyze vector push_back, demonstrating amortized O(1) with a…
Lightning on
CppDefCon3 - WarGamesKevin Carpenter04m
Claims about WarGames accuracy meet concrete checks: the on-screen IMSA 8080 and double 8-inch floppies are exaggerated, the acoustic modem’s shown lights…
Lightning on
Peering Forward - C++’s Next DecadeHerb Sutter01h 37m
Three concrete things decide whether to watch: compile-time reflection is on track for C++26 with source generation examples (command-line parsing…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
What Volatile Means (and Doesn’t Mean) in C++ ProgrammingBen Saks01h 02m
Explains that volatile protects accesses to memory-mapped UART registers (status bit and transmit buffer) by preventing the compiler from eliding or reordering…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
Message Handling with Boolean AlgebraBen Deane01h 01m
A message-handling library for embedded systems uses Boolean algebra to simplify match expressions at compile time so runtime dispatch does minimal work. It…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Unit Testing in C++Dave Steffen01h 01m
Defines unit tests as small standalone executables that live with the code, shows concrete examples: an absolute value function, catching INT_MIN overflow…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Almost Always VectorKevin Carpenter01h 02m
Argues that std::vector is the right default for most C++ work and demonstrates why with concrete code: push_back and reallocation behavior, capacity vs size…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
C++ RVO: Return Value Optimization for Performance in Bloomberg C++ CodebasesMichelle Fae D'Souza01h 01m
Shows concrete examples, assembly and timings that demonstrate RVO mattering: measured loops show ~26% speedup when NRVO is allowed, assembly shows fewer…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
Common Package Specification (CPS) in Practice: Working Implementation in Conan C++ Package ManagerDiego Rodriguez-Losada Gonzalez01h 00m
A working CPS implementation lands inside Conan and actually generates tens of thousands of packages (and the metadata for half a million binaries) from…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
So You Think You Can HashVictor Ciura59m
Claims a concrete API: repackaged hashers with init consume finalize stages, and a uniform hash_append protocol so aggregate types contribute salient bits…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
LLVM's Realtime Safety Revolution: Tools for Modern Mission Critical SystemsChristopher Apple, David Trevelyan57m
LLVM 20 ships a runtime checker and a compile‑time checker: RealtimeSanitizer intercepts libc calls (malloc, pthread_mutex_lock, etc.), prints a stack and…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
C++ Game Development - Many Ways to Kill an Orc (or a Hero)Patrice Roy51m
Compares concrete implementations: virtual-inheritance polymorphism, template-based interfaces, C++20 Concepts for intent and std::variant visitor-based…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
Associative Iteration - Shaping Ancient Mathematical Knowledge Into Powerful Bit-fiddling TechniquesJamie Pond37m
Claims associative repetition reduces certain monoid loops from O(log(N)) vs O(N) by using bit-count-driven composition, provides a templated function that…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
The Most Important C++ Design Guideline is TestabilityJody Hagins59m
Argues testability is the top design goal, not just unit tests, and backs it with tactics and failures: a standard-compliant expose private members via…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
C++ Safety And Security Panel 2024Michael S Wong01h 29m
Panel reports concrete outputs and open engineering work: P2687r0 P2816R0 P3038R0 are concrete profile proposals that aim to make rule-sets tool-checkable…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Bridging the Gap: Writing Portable C++ Programs for CPU and GPUThomas Mejstrik48m
Concrete patterns and tradeoffs for running the same C++ code on NVIDIA GPUs (CUDA) and CPUs, with compiler-tested examples: how nvcc vs clang differ, a quiz…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
Security Beyond Memory Safety - Using Modern C++ to Avoid Vulnerabilities by DesignMax Hoffmann01h 06m
Claims that memory safety fixes only about one third of real-world vulnerabilities and that C++ can prevent many remaining classes by design. Shows a working…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
C++ Reflection Based Libraries to Look Forward ToSaksham Sharma01h 05m
Reflection proposal already has working compiler implementations (EDG and a Bloomberg clang fork) and the talk shows three concrete libraries prototyped on a…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
C++ Relocation - How to Achieve Blazing Fast Save and Restore and More!Eduardo Madrid56m
Claims that transforming objects into columnwise structures of arrays and using Type Erasure tailored for relocatability removes millions of tiny allocations…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
Compile-Time Validation in C++ ProgrammingAlon Wolf54m
Claims a practical system that records every compile-time action, validates lifetimes, borrows and pointer assignments, and reports errors at the call site…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
What’s Eating my RAM? - C++ Memory ManagementJianfei Pan42m
Service raises a 90% memory alarm and investigation finds both leaks and fragmentation: a long‑running stateless process holds ~214 MB total with ~10 MB free…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Debugging and Testing in C++ Software DevelopmentGreg Law, Mike Shah01h 01m
Advocates writing tests first and always write a regression test for any reported bug, aiming for fast suites (interactive tests a few minutes, pre-merge under…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Function Call Resolution in C++Ben Saks01h 02m
Covers exactly how calls like f(x,y) get chosen: concrete rules for name lookup, argument-dependent lookup (ADL), overload resolution rankings, default…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
Leveraging C++20/23 Features for Low Level InteractionsJeffrey Erickson58m
Shows concrete techniques: uses inout_ptr/out_ptr to avoid stale raw pointers crossing into C, initializes smart pointers to MMIO with a type-specific custom…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
C++ Exceptions for Smaller FirmwareKhalil Estell01h 25m
Steps to enable C++ exceptions on ARM, flip -fno-exceptions to -fexceptions and provide a low‑level allocator, then override __cxa_allocate_exception and the…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
10 Problems Large Companies Have Managing C++ Dependencies and How to Solve ThemAugustin Popa01h 01m
Talk gives concrete fixes not platitudes: it reports interviews with over 15 large teams, compares package managers like vcpkg and Conan, shows a demo building…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Fast and Small C++ - When Efficiency MattersAndreas Fertig01h 03m
Shows how empty-base/CompressedPair tricks shrink a unique_ptr with a compile-time deleter to pointer size, demonstrates EBO + C++20 no_unique_address and…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Taming the Filter View in C++ ProgrammingNicolai M. Josuttis01h 09m
Filter view behaves oddly in practice: begin can be linear and reverse can make iteration quadratic, transform-before-filter can re-evaluate values, caching…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
C++ Game Development - Techniques to Optimise Multithreaded Data BuildingDominik Grabiec52m
Build system runs on a job/task system on a 16‑physical‑core (32 logical) PC and processes tens of millions of nodes stored in a compact spatial structure. A…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Application of C++ in Computational Cancer ModelingRuibo Zhang25m
Simulates thousands of pseudo‑tumors for a colorectal model, implemented with Eigen matrices for state and transitions and using C++11 RNGs to draw exponential…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
Designing C++ Code Generator Guardrails: A Collaboration Among Outreach & Development Teams & UsersCB Bailey, Sherry Sontag01h 03m
Two teams spend two years adding concrete guardrails to Bloomberg’s 18‑year‑old C++ code generator: they change generation patterns, add directed CMake…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
How to Use string_view in C++ - Basics, Benefits, and Best PracticesJasmine Lopez, Prithvi Okade01h 04m
string_view is a lightweight pointer+length view that avoids heap allocation for many APIs but string_view is pointer+length and not null terminated so C…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
C++ Shared Libraries and Where To Find ThemLuis Caro Campos01h 02m
Covers exactly when libraries get found — at configure, link, run and package time — and which tools reveal the truth: ld/ld.so and ldd, readelf/objdump…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
User API & C++ Implementation of a Multi Producer, Multi Consumer, Lock Free, Atomic QueueErez Strauss01h 03m
Lock-free MPMC queue implemented in C++17 std::atomic, uses a circular array of fixed-size, cacheline-aligned entries, no heap allocation at runtime, and a…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Using Modern C++ to Build XOffsetDatastructure - Zero-Encoding & Zero-Decoding Serialization LibraryFanchen Su57m
https://cppcon.org --- Using Modern C++ to Build XOffsetDatastructure: A Zero-Encoding and Zero-Decoding High-Performance Serialization Library in the Game…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Generic Programming in C++David Olsen59m
Explains concrete C++ template rules: templates belong in headers, substitution vs instantiation behaves differently, member functions of class templates are…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
Hidden Overhead of a Function APIOleksandr Bacherikov01h 03m
Examines concrete assembly and microbenchmarks across Clang GCC and MSVC on ARM and x86 and shows how signature choices matter: returning by value usually…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
Reusable Code, Reusable Data StructuresSebastian Theophil41m
Concrete rules for reuse: prefer small generic functions that state minimal requirements (rectangles, ranges) and use customization points like global…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Concepts in C++Nicolai M. Josuttis01h 01m
Explains how C++20 concepts name concrete requirements and use requires clauses to fix real problems — e.g. two add overloads resolved by a has_push_back…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
C++ Reflection Is Not ContemplationAndrei Alexandrescu01h 10m
Argues that reflection without generation is useless and demonstrates concrete primitives that actually produce code: a two-line property specification expands…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
Embracing an Adversarial Mindset for C++ SecurityAmanda Rousseau01h 26m
Covers concrete C++ security work: walkthroughs of real Windows exploits (BLF heap-spray privilege escalation and printer RPC RCE) that are used in the wild…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
The Beman Project: Bringing C++ Standard Libraries to the Next LevelDavid Sankel01h 09m
Community project provides runnable implementations, a reusable library template, CI and Conan packaging guidance, and a Discourse + GitHub workflow so…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
Secrets of C++ Scripting Bindings: Bridging Compile Time and Run TimeJason Turner01h 01m
Starts from first principles and actually builds a tiny scripting engine (complete, runnable 96-line engine) that registers C++ functions via template…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
C++ Under the Hood: Internal Class MechanismsChris Ryan58m
Concrete demos of how objects get built and torn down: vtable pointer setup during inside‑out construction and outside‑in destruction, and why destructors…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Building Safe and Reliable Surgical Robotics with C++Milad Khaledyan01h 00m
Claims that C++ can meet Class C surgical-robotics safety by combining architecture, process and tooling with measurable practices: a robotically assisted…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
Making Hard C++ Tests Easy: A Case Study From the Motion Planning DomainChip Hogg01h 03m
Claims a concrete pipeline: an open-source Au units library underpins chainable pose/path/motion types, a map layer provides either map sketches or backdrops…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Beyond Compilation Databases to Support C++ Modules: Build DatabasesBen Boeckel49m
Clang-style compile_commands.json cannot describe C++ modules so a new JSON format (P2977) records ordered sets and families of translation units, per-unit BMI…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Modern C++ Error HandlingPhil Nash01h 01m
Covers concrete choices not high-level promises: C++17 std::optional and C++23 std::expected with the Monadic Operations (transform and_then transform_error…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Adventures with C++ Legacy Codebases: Tales of Incremental ImprovementRoth Michaels47m
Three merged 20+ year C++ codebases total millions of lines and the concrete wins are specific: incremental rollout of ASan and UBSan and unit/regression tests…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
What’s New for Visual Studio Code: Performance, GitHub Copilot, and CMake EnhancementsSinem Akinci, Alexandra Kemper47m
VS Code claims concrete wins: 3.6x faster symbol search and colorization/intelligence about 1.5x faster, with an example amalgamation file going from 11s→3s…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Functional Programming and Monads in C++Jonathan Müller56m
Argues that real benefit is concrete composition: use std::ranges and views and generators to build lazy pipelines (iota, transform, filter, join, zip…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
Build Safer Modern C++ Application: Mix Assertion, Logging, Unit Testing and Fuzzing with ZeroErrXiaofan Sun54m
ZeroErr is a header-only C++11 library that actually combines assertion, logging, unit testing and structure-aware fuzzing into one framework. Assertions log…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
C++ 20 Innovations: High-Performance Cross-Platform Architecture in C++Noah Stein55m
Claims that C++20 concepts and constraints plus a disciplined inclusion layout and build-time tag let one codebase deliver both a portable common quaternion…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
Blazing Trails: Building the World's Fastest GameBoy Emulator in Modern C++Tom Tesch01h 02m
Claims a world's fastest GameBoy emulator by implementing core DMG-001 components in modern C++, measuring concrete throughput (about 50M instructions in 200…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
Implementing Particle Filters with C++ RangesNahuel Espinosa30m
Implements particle filters using C++20/23 ranges, builds a reusable resampling adapter that materializes weights into a discrete_distribution and offers three…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
When Nanoseconds Matter: Ultrafast Trading Systems in C++David Gross01h 29m
Claims are concrete: an order book with ~1000 levels per side is fastest as a contiguous array reversed so top‑of‑book updates avoid vector shifts, linear…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
spanny 2: Rise of C++ std::mdspanGriswald Brooks01h 00m
Uses the std::mdspan reference implementation from the Coco Library because GCC lacks full support, shows exact layout and accessor requirements, and…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Monadic Operations in Modern C++: A Practical ApproachVitaly Fanaskov54m
C++23 std::optional and std::expected plus ranges and a year of real use in a commercial internal library drive concrete advice: UI subsystem for the…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
C++ Sender Patterns to Wrangle C++ Concurrency in Embedded DevicesMichael Caisse01h 01m
Claims that senders tame bare‑metal concurrency by composing Intel's open source bare-metal senders and receivers into reusable building blocks, avoiding…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Lifetime Management in CppPhil Nash53m
Explains that the concrete claim is: prefer Rule of 0 (use existing value types and managers) and only implement special members when managing resources, which…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
Why Is My C++ Build So Slow? Compilation Profiling and VisualizationSamuel Privett53m
Build slowness turns on specifics: Clang’s -ftime-trace produces per-object JSON showing front-end vs back-end time, Ninja emits a ninja log that ninja tracing…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
To Int or to Uint, This is the QuestionAlex Dathskovsky01h 01m
Choosing signed vs unsigned changes generated code and runtime: dividing (a+b)/2 yields a different sequence of instructions because signed arithmetic extracts…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Leveraging C++ for Efficient Motion Planning: RRT Algorithm for Robotic ArmsAditi Pawaskar13m
C++ implementation of an RRT motion planner that reads an OpenCV binary map input, builds a tree of Node objects stored as a vector of node pointers, and…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Guide to Linear Algebra With the Eigen C++ LibraryDaniel Hanson01h 01m
Slides and code show concrete, runnable things: Eigen library (header‑only, expression templates) used for matrix math, QR least‑squares (Householder) to solve…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
What's New in Visual Studio for C++ DevelopersMichael Price, Mryam Girmay01h 02m
Visual Studio now bundles GitHub Copilot with inline chat, editor suggestions, repo-scoped content exclusion and a custom-instructions experiment; Copilot…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
import CMake; // Mastering C++ ModulesBill Hoffman01h 01m
CMake now has non‑experimental named module support and an experimental import std flow, with specific notes: CMake 3.28 non‑experimental named modules, 3.29…
Talk at Maple 3/4/5, 6700 North Gaylord Rockies Boulevard on
Session Types in C++ - A Programmer's JourneyMiodrag Misha Djukic01h 00m
Claims a first known implementation of session types in C++ with a concrete library that encodes protocols as types, offers send/receive/offer/choice and loop…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Ranges++: Are Output Range Adaptors the Next Iteration of C++ Ranges?Daisy Hollman01h 11m
Claims that output-range (push) adaptors eliminate the double-invocation TASI by merging increment+dereference into a single push_value customization point…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Object-Oriented Programming in C++Andreas Fertig01h 04m
Shows concrete code and compiler-transformation evidence: uses C++ Insights demo to emit C translation, exposes vtable/vptr reveal and exactly how virtual…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
Cross-Platform Floating-Point Determinism Out of the BoxSherry Ignatchenko01h 04m
Claim: cross‑platform bit‑for‑bit floating‑point determinism is achievable. Implementation: an open‑source, templated math library plus six strategies…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
C++ Data Structures That Make Video Games Go RoundAl-Afiq Yeong48m
Claims that std::vector gets you by 90% but the hard 10% needs custom containers, then shows concrete solutions: an open‑addressing hashmap using Robin Hood…
Talk at Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard on
Implementing C++ Reflection Using the New C++20 Tooling Opportunity: ModulesMaiko Steeman56m
Claims a working runtime reflection pipeline that reads Microsoft .ifc Binary Module Interface files (open IFC spec) to generate metadata, avoiding slow…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Cost of C++ Abstractions in C++ Embedded SystemsMarcell Juhasz49m
Measures on an STM32 breadboard with two ADCs and LEDs show concrete results: a minimal firmware starts at 2 kilobytes base firmware, replacing runtime…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
Back to Basics: Rvalues and Move Semantics in C++Amir Kirsh01h 00m
Implements a minimal string type and implements a minimal string with move ctor/assign showing the actual code changes and prints that prove the move happened…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Investigating C++ Legacy Design Trends: Newer Isn’t Always Better!Katherine Rocha53m
Compares concrete replacements and measurements: shows C++20 Concepts make errors readable versus SFINAE/Boost that produce inscrutable template traces…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
Boosting Software Efficiency in C++: 100% Performance Improvement in a C++ Embedded SystemGili Kamma51m
Claims a reproducible 100% throughput gain — device goes from unstable at ~5,000 endpoints to supporting 10,000 with zero resets or data loss. Implements Linux…
Talk at Cottonwood 2/3, 6700 North Gaylord Rockies Boulevard on
Code Generation from Unified Robot Description Format (URDF) for Accelerated RoboticsPaul Gesel40m
Code generation translates URDF into tight, compile-time C++ (via Python + Jinja) and integrates with CMake to produce fixed-size, stack-allocated FK/IK…
Talk at Spruce 3/4, 6700 North Gaylord Rockies Boulevard on
Gazing Beyond Reflection for C++26Daveed Vandevoorde01h 21m
Proposal P2996 aims to land value‑based reflection in C++26 and already shows working implementations in EDG and a Bloomberg fork of clang, with SG7 review…
Talk at Adams A, 6700 North Gaylord Rockies Boulevard on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.