~/conference

CppCon 2021

date:2021-10-24..2021-10-29
location:-- online --
series:CppCon · 11 editions
tags:[rust]
titleauthorlength
Using C Libraries in your Modern C++ Embedded ProjectMichael Caisse59m
Project integrates a vendor C EtherCAT slave stack (code‑generated C, ssc) into a Modern C++ embedded product using extern "C" boundaries, layering a hardware…
Talk in English on
Branchless Programming in C++Fedor G Pikus01h 04m
Concrete code transformations and measurements determine value: a simple if (b) s += x change yields 2.5x speedup on the presented machine; a poorly predicted…
Talk in English on
Plenary: Small InspirationMichael Caisse01h 14m
Less than one percent of manufactured processors end up in desktops yet that tiny world matters: an F-150 contains 150 million lines of code, IoT breaches…
Talk in English on
Configuration, Extension, MaintainabilityTitus Winters01h 00m
Argues that granular knobs become a maintenance tax: Hyrum’s Law bites, tests won’t catch timing/regressions, and defaults get petrified — examples include…
Talk in English on
Practical Advice for Maintaining and Migrating Working CodeBrian Ruth54m
Concrete recipes for getting tests into untested C++ code without huge rewrites: hijack main in the simulator and add Google Test to run desktop builds; write…
Talk in English on
C++ Standards Committee - Fireside Chat PanelC++ Standards Committee01h 32m
Panel covers what actually moves the standard not slogans Expect networking likely misses C++23 because of debates over security and the sender/receiver model…
Panel in English on
++namedtuple - Python-style Named Tuples in C++20Kris Jusiak01h 00m
Shows a concrete C++20 library that reproduces Python-style named tuples: implements namedtuple{"price"_t = 42, "size"_t = 1'000} and name tags like "price"_t…
Talk in English on
Debugging Assembly Language and GPU Kernels in Visual Studio CodeJulia Reid01h 01m
Demos show concrete outcomes: a Raspberry Pi project builds and tests on a self‑hosted GitHub Actions runner with cmakepresets.json driving consistent…
Talk in English on
Why You Should Write Code That You Should Never WriteDaisy Hollman01h 05m
A collection of short C++ snippets gets dissected: one shows right fold over assignment to iterate parameter packs backwards (using fold expressions and…
Talk in English on
Data Orientation For The Win!Eduardo Madrid51m
Argues data-oriented layouts are practical by building Generic Programming components that replace pointers and virtual dispatch with Zoo type-erasure and…
Talk in English on
Lightning Talk: Introducing Your Team To The MobDustin Randall05m
https://cppcon.org/ https://github.com/CppCon/CppCon2021 --- --- Dustin Randall --- Videos Filmed & Edited by Bash Films: http://www.BashFilms.com Register…
Lightning in English on
Lightning Talk: That's a @meta rotate!Kris Jusiak05m
Claims compile time reflection with circle lets C++ rotate and manipulate type lists exactly like values, using a meta array of types and packing/unpacking to…
Lightning in English on
Lightning Talk: Unlocking More Ways To Use Range-Based ForLouis Thompson06m
Builds a working C++ enumerate by composing a pseudo iterator that holds a counter plus the original iterator, implements ++, != (comparing only the underlying…
Lightning in English on
Lightning Talk: Zen and the Art of Software MaintenanceSam Sobell06m
Claims a missing category called execution frameworks that prescribe which human-focused tools to apply, when. Proposes a prototype gumption framework that…
Lightning in English on
Lightning Talk: Upgrading The Compiler Isn't FreeAndre Kostur04m
Upgrading compilers uncovers concrete, costly failures: memset on a non-trivial class triggers new warnings, test suites fail when unordered_set iteration…
Lightning in English on
Lightning Talk: The Most Important Design GuidelineJeff Amstutz06m
Central claim: make the right thing easy to do and the wrong thing difficult to do. Concrete examples show how that plays out: prefer APIs that return…
Lightning in English on
Lightning Talk: The Process Is The ProblemBen Deane05m
A clear claim: process beats polish — rapid iteration wins where careful one-shot engineering fails. Paul McCready takes the Kremer prize after years of groups…
Lightning in English on
Lightning Talk: You Too Can Have Fun with Ray Tracing!Jeff Amstutz05m
Starts from writing pixels with cout to a file and two nested loops then adds rays through a camera and sphere intersection tests to color pixels by hit normal…
Lightning in English on
Lightning Talk: Using the IFC SpecificationCameron DaCamara05m
Compiles a C++ module to an IFC file and uses the IFC specification implementation from Microsoft to deserialize it in a browser via JavaScript the result is a…
Lightning in English on
Lightning Talk: FINALLY - The Presentation You've All Been Waiting ForLouis Thomas05m
Shows a concrete RAII-based finally implementation: store a lambda, call it in the destructor, and use it to reliably close files and flush footnote buffers…
Lightning in English on
Lightning Talk: C++ Tip Of The WeekKris Jusiak04m
Rapid overview of a weekly C++ tip series that claims 240 tips and publishes every Sunday, with a live GitHub repo and a website for code and issues. Shows…
Lightning in English on
Lightning Talk: So You Thought C++ Was Weird? Meet EnumsRoth Michaels06m
C++ enums are just named integers so they are not a closed set: before C++17 the underlying storage is unspecified and even after it can hold any bit pattern…
Lightning in English on
Lightning Talk: Zero Cost RegressionsPejman Ghorbanzade05m
Claims a practical pipeline that finds unintended side effects before release by capturing program outputs and comparing them across versions. Works on a six…
Lightning in English on
Lightning Talk: I Wrote a C++ REPL in 20 Lines of Code - And so can you!Benjamin Brock06m
A replay-based REPL that compiles a pasted line into a program, runs the executable, diffs output and repeats, actually works for C++ demos. It starts from…
Lightning in English on
Lightning Talk: Automation and Process to Increase Code QualityIra Mykytyn05m
A 45,000‑line C++ library moves from about 40% test coverage to a target near 80% while eliminating roughly ~1,000 warnings, enforcing warnings-as-errors, and…
Lightning in English on
Lightning Talk: Better Support For Emotive Programming in C++Pablo G Halpern05m
Claims that C++ currently accepts many emoji-like tokens but crucially lacks the classic smiley and proposes the smiley emoticon as overloadable operator with…
Lightning in English on
Lightning Talk: Curry-Howard CorrespondenceJefferson Carpenter06m
Shows the Curry–Howard mapping by encoding propositions as types and proofs as programs, using C++ templates and constexpr functions to build a tiny type-level…
Lightning in English on
Lightning Talk: Memoizing Constexpr ProgramsChris Philip05m
Shows how to memoize constexpr recursion by dispatching through a variable template so recursion hits cached template instantiations instead of redoing work…
Lightning in English on
Lightning Talk: Direct Aggregate InitialisationTimur Doumler06m
C++20 adds direct aggregate initialization: using parentheses triggers aggregate initialization, enabling things like perfect-forwarding into aggregates and…
Lightning in English on
Lightning Talk: Quantum Interpretations of the C++ Object ModelDavid Stone06m
Claims that many pre-C++20 idioms are truly undefined because raw memory lacks objects and that C++20’s implicit-lifetime types fixes some of that, enabling…
Lightning in English on
Lightning Talk: Bridging Arenas & GCJoshua Haberman05m
https://cppcon.org/ https://github.com/CppCon/CppCon2021 --- Lightning Talk: Bridging Arenas & GC --- Joshua Haberman --- Videos Filmed & Edited by Bash…
Lightning in English on
Lightning Talk: Creating a GPU With C++ and an FPGAIwan Smith06m
Concrete claim: a working VGA-capable GPU implemented on an rta7 FPGA development board from about less than 100 lines of C++ using Xilinx HLS to Verilog. The…
Lightning in English on
Lightning Talks: C++ en Tu IdiomaJavier Estrada05m
Maintains and expands cppreference en español with concrete progress during 2020–2021, converting pages for jthread and atomic operations and noting missing…
Lightning in English on
Lightning Talk: Is My Cat Turing-Complete?Chloé Lourseyre05m
Claims a cat can implement Brainfuck-like primitives and tries to prove it with small, informal experiments: poke -> meow input/output, kibbles-as-memory-tape…
Lightning in English on
Lightning Talk: Tackling Technical Debt: Hello Junior Developers!Tulio Paschoalin Leao05m
Claims a repeatable program: pair a few architects with cohorts of juniors who dedicate 20% time in synchronized work days, teach via code reviews and…
Lightning in English on
Lightning Talk: Love Code Reviews? Try Pair Programming InsteadAnkur Satle07m
An in-house experiment at a telecommunication company compares asynchronous code reviews to pair programming and reports concrete wins: earlier idea exchange…
Lightning in English on
Lightning Talk: Required Field for Designated InitializationLesley Lai05m
Shows a concrete pattern: wrap mandatory members in a required_field wrapper that has a single-argument constructor so aggregates still initialize but missing…
Lightning in English on
Lightning Talk: FlexClass - Classes With Dynamic Size For EveryoneBreno Guimarães05m
A library that implements C style flexible array members for C++ by allocating a single blob with a tiny custom control block (refcount+size packed to eight…
Lightning in English on
Lightning Talk: One Year of Meeting C++ OnlineJens Weller05m
Organizing a year of Meeting C++ online produces concrete results: running job fairs with 10 companies attended (first in March), publishing job fair stats…
Lightning in English on
Lightning Talk: I'm a C++ Expert (And Proud Of It)Chloé Lourseyre04m
Claim: being an expert is practical and social not mystical — three concrete things matter: knowledge of the language, code analysis and refactoring…
Lightning in English on
Lightning Talk: Online Tools Every C++ Developers Should KnowThamara Andrade05m
Tools list includes Online GDB which lets users run C++ snippets and attach GDB to inspect variables, Compiler Explorer that compiles to assembly so compiled…
Lightning in English on
Lightning Talk: Reading Configuration Values When You Should Not FailMatthias Bilger05m
Claims a compact, expressive API that reads embedded configuration without crashing by combining ID-based lookup, default, ratio and max metadata into one…
Lightning in English on
Lightning Talk: Simplify Vulkan APIs with Code GenerationVictor Bogado da Silva Lins05m
Vulkan "hello world" balloons into hundreds of lines, so the claim is concrete: read the official XML API registry and generate code rather than hand-write…
Lightning in English on
Lightning Talk: Quickly Estimating Powers-Of-Two in Your HeadAndreas Weis06m
Shows a concrete mental method: split exponent into tens and ones, use 2^10 ≈ 1024 ≈ 10^3 to turn each ten into roughly 10^3, multiply by the small-power…
Lightning in English on
Lightning Talk: Fun with Pointers to MembersDominic Pöschko06m
Claims that type descriptors can stand in for missing static reflection and demonstrates the actual mechanism using pointers to members. Shows template-based…
Lightning in English on
Plenary: Six Impossible ThingsKevlin Henney01h 32m
Six concrete limits emerge: integer overflow and IEEE 754 NaN cause steering controls to go to NaN and crash a race car; epoch and time APIs return -1 and send…
Talk in English at Online A, online on
C++20: Reaching for the Aims of C++Bjarne Stroustrup01h 38m
Claims: C++20 delivers concrete, testable advances — import std boosts compile speed ~10× (nine headers gave ~5×, experiments see 0–80×), modules cut…
Talk in English at A) Aurora C/D, online on
Heterogeneous Modern C++ with SYCLMichael S Wong, Nevin Liber, Tom Deakin, Gordon Brown01h 07m
Slides claim SYCL 2020 adds ~40 features and aligns with C++17 while remaining backwards compatible, with unified shared memory and group/subgroup algorithms…
Talk in English at online on
Concurrency PatternsRainer Grimm01h 02m
Presents concrete C++ concurrency patterns and code: a thread-safe storage implemented with std::mutex and atomics; a strategized locking approach combining…
Talk in German at online on
Exceptional C++Victor Ciura01h 00m
Deep dive into Windows exception internals: how hardware faults and OS signals become structured exceptions, how the compiler maps C++ throw/unwind to sch…
Talk in English at online on
Type-and-resource Safety in Modern C++Bjarne Stroustrup54m
Claims that complete type-and-resource safety is achievable in modern C++ by following the C++ Core Guidelines and enforcing a small set of rules with static…
Talk in English at A) Aurora C/D, online on
“Constexpr Everything” - The Standard Library, Microkernel, Apps, and Unit TestsRian Quinn01h 00m
Claims an AUTOSAR‑compliant hypervisor microkernel, apps and unit tests are implemented in C++20 as constexpr everything, with a bespoke BSL, Clang Tidy‑based…
Talk in English at C) Summit 7, online on
Implementing C++ Modules: Lessons Learned, Lessons AbandonedCameron DaCamara, Gabriel Dos Reis01h 06m
Implementation report gives concrete claims and working fixes: MSVC adds a persistent translation unit (IFC) on disk, linkers record strong module ownership so…
Talk in English at online on
GraphBLAS: Building a C++ Matrix API for Graph AlgorithmsBenjamin Brock, Scott McMillan57m
A working C++ GraphBLAS API prototypes sparse-matrix containers (2-D key_type, fixed shape, compile-time backend hints), callable algebraic primitives (binary…
Talk in English at online on
Lessons Learned from Packaging 10,000+ C++ ProjectsBret Brown, Daniel Ruoso01h 01m
Bloomberg claims it coherently builds and integrates 10,000+ C++ packages using mostly CMake plus pkg-config, prebuilt binaries, and a Debian-style…
Talk in English at C) Summit 7, online on
C++20 Templates: The next level: Concepts and moreAndreas Fertig01h 11m
Shows concrete, actionable detail: how requires expressions and a new concept keyword replace SFINAE patterns, examples that enforce same-type, noexcept and…
Talk in English at Online C, online on
Your New Mental Model of constexprJason Turner01h 05m
Claim: constexpr is best viewed as moving work from runtime to compile time along a constexpr continuum (0–100%). Tools and standards: C++20 features, CTRE…
Talk in English at online on
Law of Demeter: A Practical Guide to Loose CouplingKris Jusiak56m
Shows concrete C++ examples that break and fix the Law of Demeter and claims applying LoD plus Single Responsibility and Dependency Inversion yields code…
Talk in English at online on
Understanding and Mastering C++'s ComplexityAmir Kirsh58m
Claims concrete examples and fixes: C++ survives four decades and the talk demonstrates why with real code — argument-dependent lookup makes std::swap visible…
Talk in English at online on
Evolving an Actor Library Based on Lessons Learned from Large-Scale DeploymentsBen Hindman01h 01m
Built a pre‑C++11 actor+future library called libprocess to scale Apache Mesos to 75,000 physical machines, finds the implementation causes excessive…
Talk in English at online on
Discovering a User-Facing ConceptChristopher Di Bella01h 02m
Claims that concepts are discovered by analyzing algorithms and demonstrates deriving a user-facing semigroup from a range-based left fold, building layered…
Talk in English at Online E, online on
Just Enough Assembly for Compiler ExplorerAnders Schau Knatten01h 03m
Teaches the concrete bits needed to read Compiler Explorer output: x86_64 calling convention, how the first args live in rdi/rsi and returns in rax, how stack…
Talk in English at Online A, online on
Automatically Process Your Operations in Bulk With CoroutinesFrancesco Zoffoli01h 05m
Claim: let per-item code stay simple while C++20 coroutines transparently gather arguments and dispatch bulk calls. Implementation builds a minimal…
Talk in English at online on
C++11/14 at Scale: What Have We Learned?Vittorio Romeo01h 00m
Eight years of shipping Modern C++ at scale yields concrete rules not slogans: a company-wide course trains hundreds, a book (Embracing Modern C++ Safely)…
Talk in English at online on
Back to Basics: Designing Classes (part 1 of 2)Klaus Iglberger01h 01m
Argues that class design becomes manageable by extracting actual variation points and showing concrete refactor steps: replace sprawling inheritance with the…
Talk in English at online on
Back to Basics: Designing Classes (part 2 of 2)Klaus Iglberger01h 02m
Shows concrete rules and gotchas: use value initialization with {} or in-class initializers instead of empty default constructors; prefer member-initializer…
Talk in English at online on
Failing Successfully: Reporting and Handling ErrorsRobert Leahy51m
Argues for precise error contracts: prefer fail fast and fail often, keep low-level APIs returning error codes and hand up rich context so higher layers can…
Talk in English at online on
Back to Basics: PointersMike Shah01h 00m
Covers concrete claims and demos: what a raw pointer actually stores, toy code that shows dereference, pointers-to-pointers, arrays decaying to pointers…
Talk in English at online on
Compile-Time Compression and Resource Generation with C++20Ashley Roll56m
C++20 constexpr/consteval/constinit plus lambdas-as-types generate real artifacts: a 32-entry lerp sine lookup table built at compile time, Huffman-compressed…
Talk in English at online on
Implementing static_vector: How Hard Could it Be?David Stone01h 02m
Stack-allocated static_vector claims std::vector semantics but with inline storage, and the talk drills into real tradeoffs: a size optimization that can be 18…
Talk in English at B) Summit 8/9, online on
Back to Basics: ConcurrencyMike Shah01h 02m
Gentle, example‑driven tour of modern C++ concurrency that actually shows code and failures: uses std::thread and jthread, demonstrates data races with 1000…
Talk in English at D) Valley 1, online on
Back to Basics: Move SemanticsNicolai M. Josuttis01h 04m
Shows concrete code and rules: a vector<string> example demonstrates that replacing copying with move constructors cuts heap allocations and is noticeably…
Talk in English at online on
Differentiable Programming in C++Vassil Vassilev, William Moses59m
Claims that integrating automatic differentiation into the compiler yields concrete speed and compatibility wins: two implementations — Clad (AST-level) and…
Talk in English at Online B, online on
Code Analysis++Anastasia Kazakova01h 01m
Survey of what actually works now and what’s experimental: the talk lists concrete tool coverage (Clang/clang-tidy, clang-format, CLion, ReSharper C++, MSVC)…
Talk in English at online on
Back To Basics: Overload ResolutionAnsel Sermersheim, Barbara Geller01h 05m
Condenses the C++ standard to the concrete rules that decide overload choice: ranking of standard conversions (exact match, promotions vs conversions)…
Talk in English at online on
Extending and Simplifying C++: Thoughts on Pattern Matching using `is` and `as`Herb Sutter01h 37m
C++ evolution proposes general pattern matching via operator is queries and operator as casts that unify variant any optional and static type traits; the paper…
Talk in English at A) Aurora C/D, online on
Visualize Time Enabled Data using ArcGIS Qt (C++) and ToolkitGela Malek Pour19m
Build uses ArcGIS Runtime for Qt (C++) plus the ArcGIS Toolkit time slider to visualize a time‑enabled hurricane feature layer for Sep–Dec 2005. The demo reads…
Talk in English at Online A, online on
Back to Basics: const and constexprRainer Grimm01h 02m
https://cppcon.org/ https://github.com/CppCon/CppCon2021 --- It is a virtue to program as const as possible in modern C++. Your program is by design way more…
Talk in English at online on
Misra Parallelism Safety-critical Guidelines for C++11, 17, Then C++20, 23Michael S Wong, Andreas Weis, Ilya Berala58m
Group work documents a concrete, tool-focused effort: a phase‑one spreadsheet of ~81 candidate rules, 18 accepted and 20 deferred toward MISRA NEXT for…
Talk in English at online on
Documentation in the Era of Concepts and RangesChristopher Di Bella, Sy Brand01h 01m
Argues that C++20 concepts serve as concepts as shared vocabulary for both compiler errors and human docs, compares real docs (abseil, fmtlib, LLVM, range-v3…
Talk in English at Online D, online on
Spooky Action at a DistanceVictor Ciura01h 03m
Compares concrete Observer implementations used in a real C++ codebase and measures tradeoffs: a simple vector-of-callbacks versus indexed registries and…
Talk in English at online on
Software Architecture Lessons from Multidimensional Spaces ExplorationsVincent Reverdy57m
Proposes that std::mdspan breaks into element type, extent, layout and accessor and that std::mdspan is a promising start but currently omits iterators and…
Talk in English at Online E, online on
The Upcoming Concurrency TS Version 2 for Low-Latency and Lockless SynchronizationMaged M. Michael, Michael S Wong, Paul E. McKenney54m
ISO C++ formally approves Concurrency TS v2 with concrete, testable interfaces: hazard pointers (domains, protect/try_protect, retire) and RCU RAII readers…
Talk in English at online on
In-memory and Persistent Representations of C++Gabriel Dos Reis01h 05m
Claim: concrete, compiler-neutral in-memory and on-disk representations exist and are usable today. Implementation: an open IPR library under MIT captures a…
Talk in English at A) Aurora C/D, online on
Design Patterns: Facts and MisconceptionsKlaus Iglberger51m
Argument checks several concrete claims: std::make_unique improves exception safety is historically true but obsolete under C++17, std::make_unique fulfills…
Talk in English at online on
Beyond struct: Meta-programming a struct Replacement in C++20John Bandela48m
Claims a workable struct replacement implemented in standard C++20 using a fixed_string non-type template parameter for names, overload resolution and…
Talk in English at online on
Embracing User Defined Literals Safely for Types that Behave as though Built-inPablo G Halpern01h 03m
Shows exactly how to write and choose among cooked, raw, template and string UDLs, using real code: a base‑3 numeric parser turned into a compile‑time…
Talk in English at online on
Faster, Easier, Simpler VectorsDavid Stone01h 01m
Argues that std::vector can be replaced for many workloads and shows concrete implementations: 32‑bit vector, static vector, small‑buffer and stable vector…
Talk in English at online on
Back to Basics: Templates (part 1 of 2)Bob Steagall01h 01m
Part 1 explains concrete mechanics: templates are recipes that the compiler parses in phase 7 parses templates and generates in phase 8 instantiates them…
Talk in English at online on
C++ to the RISCue! A Practical Guide for Embedded C++20Kris Jusiak57m
Claims that modern C++20 runs for embedded development entirely with online tools and that a declarative state machine yields smaller faster output. Uses…
Talk in English at online on
The Preprocessor: Everything You Need to Know and More!Brian Ruth58m
Preprocessor remains a text‑replacement engine that actually pastes headers into a translation unit (see -E preprocessor dump or Compiler Explorer to inspect…
Talk in English at online on
Bringing Existing Code to CUDA Using constexpr and std::pmrBowie Owens01h 00m
Existing options-pricing code is adapted to run on GPU by changing where and how memory is allocated and by making functions visible to the device: allocation…
Talk in English at online on
Composable C++: Principles and PatternsBen Deane01h 01m
Claims that matter: returning bool or int unlocks composition, and choosing return types (optional, collections) prevents awkward special cases. Examples show…
Talk in English at online on
Static Analysis and Program Safety in C++: Making it RealSunny Chatterjee01h 00m
Static analysis for C++ claims compile‑time safety with no runtime cost and actually ships as a Visual Studio Community Edition feature and a GitHub Action…
Talk in English at online on
Making the Most Out of Your CompilerDanila Kutenin01h 02m
Claims: switching compilers and build flags gives measurable wins. Tools: clang with thin LTO, PGO, and -O3 -flto or GCC equivalents; CPU targets like…
Talk in English at online on
Deploying the Networking TSRobert Leahy52m
Covers a concrete, deployed system built with Networking TS on top of Boost.Asio that speaks a proprietary datacon protocol to a file‑based time‑series DB…
Talk in English at C) Summit 7, online on
PGAS in C++: A Portable Abstraction for Distributed Data StructuresBenjamin Brock51m
Argues that the PGAS model gives a portable C++ abstraction that uses global pointer objects and RDMA to implement distributed data structures. Presents BCL, a…
Talk in English at D) Valley 1, online on
The Foundation of C++ Atomics: The Knowledge You Need to Correctly Use C++ AtomicsFilipe Mulonde01h 33m
Covers concrete rules and mechanisms: std::atomic (six memory orderings) and when each actually maps to fences or machine instructions, how a core’s store…
Talk in English at Online A, online on
SIMD in C++20: EVE of a new EraJoel Falcou, Denis Yaroshevskiy01h 00m
EVE is a portable C++20 SIMD library that targets ARM neon and x86 (sse2…avx‑512) and claims concrete wins: benchmarks show vectorized find ~8 ns versus…
Talk in English at Online D, online on
Typescripten: Generating Type-safe JavaScript Bindings for emscriptenSebastian Theophil01h 01m
Generates type-safe C++ wrappers from TypeScript declaration files using the TypeScript compiler API and targets emscripten via emscripten/embind so JavaScript…
Talk in English at online on
Back To Basics: Undefined BehaviorAnsel Sermersheim, Barbara Geller01h 02m
Builds a precise definition of undefined behavior, then shows concrete, surprising instances: an infinite loop with no side effects that is UB, signed integer…
Talk in English at online on
cudaFlow: Modern C++ Programming Model for GPU Task Graph ParallelismTsung-Wei Huang, Dian-Lun Lin01h 02m
A C++ library called cudaFlow wraps NVIDIA CUDA Graph to build and offload large GPU task graphs with thousands of nodes, provides an automatic cudaFlow…
Talk in English at online on
From Problem to Coroutine: Reducing I/O LatencyCheinan Marks01h 03m
Uses C++20 coroutines to build a fastq generator that yields each read, moves compute into the coroutine body and resumes on a thread-pool via a…
Talk in English at online on
Back to Basics: Object-Oriented ProgrammingRainer Grimm01h 00m
https://cppcon.org/ https://github.com/CppCon/CppCon2021 --- C++ is an object-oriented programming (OOP) language but also supports generic and functional…
Talk in English at online on
Back to Basics: LambdasNicolai M. Josuttis01h 05m
Shows exactly what lambdas do and how they differ from functions: the compiler generates a closure type with an operator() and captures become members; lambdas…
Talk in English at online on
Modern CMake ModulesBret Brown01h 02m
Bloomberg describes using dozens of single-purpose CMake modules to keep tens of thousands of CMakeLists.txt simple and declarative and reports surprising…
Talk in English at online on
Building a Lock-free Multi-producer, Multi-consumer Queue for TcmallocMatt Kulukundis01h 01m
Built a lock‑free MPMC queue to replace the mutexed transfer cache inside tcmalloc, using atomics, widened counters to mitigate ABA, unit tests, fuzzing and…
Talk in English at B) Summit 8/9, online on
Design and Implementation of Highly Scalable Quantifiable Data Structures in C++Christina Peterson, Victor Cook, Zachary Painter58m
Claims a new correctness condition, quantifiability, and ships lock‑free C++ implementations of a QStack and QQueue using compare_exchange_strong and…
Talk in English at online on
What's New in Visual Studio: 64-bit IDE, C++20, WSL 2, & MoreMarian Luparu, Sy Brand01h 07m
Visual Studio 2022 moves the IDE to 64-bit IDE and claims C++20 feature complete support, demos show modules, coroutines, ranges and hot reload actually…
Talk in English at online on
Value in a Procedural WorldLisa Lippincott01h 30m
Argues that values are observable patterns of program execution, not platonic things, and supports that with three concrete rules — stability…
Talk in English at A) Aurora C/D, online on
3D Graphics for DummiesChris Ryan01h 01m
A hand-rolled C++ matrix library and software rasterizer demonstrates the actual pipeline: 4x4 transforms, vertex pooling, depth buffer, scanline rasterization…
Talk in English at B) Summit 8/9, online on
Back To Basics: The Special Member FunctionsKlaus Iglberger01h 02m
Covers the six special member functions (default ctor, dtor, copy/move ctor and assignment) with concrete rules when the compiler generates or omits them, what…
Talk in English at online on
Interactive C++ for Data ScienceVassil Vassilev57m
Shows a working interactive C++ stack: Cling as an incremental compiler/JIT that runs full C++ (templates, lambdas, virtual inheritance), xeus-cling for…
Talk in English at online on
Testing Compile-time Constructs in a Runtime Unit Testing FrameworkIgor Bogoslavskyi31m
Claim: a library integrates with GoogleTest integration to compile snippets the test marks as forbidden, using a SHOULD_NOT_COMPILE macro that the tooling…
Talk in English at online on
A Crash Course in Calendars, Dates, Time, and Time ZonesMarc Gregoire31m
C++20 chrono features get practical exercises and gotchas not just names: compile time ratio arithmetic and the predefined SI aliases, how to build and convert…
Talk in English at online on
Sums, Products, Exponents, Monoids, Functors, Oh My!Steve Downey57m
Claims that algebraic type laws make APIs predictable and reusable and demonstrates them with C++ library features: std::variant, std::optional, std::transform…
Talk in English at online on
The Basics of ProfilingMathieu Ropert01h 00m
Begins with a clear claim: profiling finds what is actually slow, not what feels slow. Demonstrates two profiler families, sampling vs instrumentation, and…
Talk in English at online on
Design Idioms from an Alternate UniverseIvan Čukić01h 00m
Argues that concrete C++ examples beat jargon: model states with std::variant state machine to eliminate invalid combinations, use std::optional::transform…
Talk in English at online on
The Factory PatternMike Shah01h 01m
Explains a concrete claim: use a factory method to centralize creation and an extensible factory that stores name→callback pairs so new types register at run…
Talk in English at online on
Back to Basics: Classic STLBob Steagall01h 02m
Overview explains the original STL design, claims containers+iterators+algorithms as the core and shows how iterators are the real glue. Demonstrations include…
Talk in English at online on
Generic Graph Libraries in C++20Andrew Lumsdaine, Phil Ratzloff01h 01m
Claims that the C++ Standard Library already supplies the primitives to write generic graph algorithms, using C++20 concepts and ranges and customization point…
Talk in English at online on
C++20 ❤ SQLJohn Bandela49m
Claim: C++20 lets SQL queries be embedded as constexpr SQL strings and annotated with tiny C‑style comments to generate compile‑time parameter and row…
Talk in English at online on
Back to Basics: CastingBrian Ruth45m
Explains why C++ keeps four casts and when each actually changes bits, with concrete examples: using static_cast for intentional conversions and inheritance…
Talk in English at online on
Deducing this PatternsBen Deane01h 03m
C++23 adds P0847 "Deducing this", making the implicit object parameter explicit and deducible so member functions learn the static most‑derived type and value…
Talk in English at A) Aurora C/D, online on
Hazard Pointer Synchronous Reclamation Beyond Concurrency TS2Maged M. Michael54m
Proposes a concrete replacement for slow global cleanup: a cohorts interface that groups retired objects so destroying a cohort guarantees all its destructors…
Talk in English at C) Summit 7, online on
A Case-study in Rewriting a Legacy GUI Library for Real-time Audio Software in Modern C++Roth Michaels58m
A concrete case study about rewriting a legacy GUI property system into GlassProperties that uses C++17 compile-time meta-programming to convert runtime type…
Talk in English at D) Valley 1, online on
C++20: The Small PearlsRainer Grimm01h 01m
https://cppcon.org/ https://github.com/CppCon/CppCon2021 --- C++20 has way more to offer than the big four concepts, ranges, modules, and coroutines. Here are…
Talk in English at online on
A (Short) Tour of C++ ModulesDaniela Engert57m
Demonstrates concrete mechanics: the primary module interface and implementation unit separation, the role of the global module fragment, and when the export…
Talk in English at online on
Embracing PODs Safely Until They DieAlisdair Meredith, Nina Ranns01h 01m
Deep dive into when C++ types really behave like C data and what can go wrong with concrete code and working demos. Shows a concrete reinterpret_cast trick…
Talk in English at Online B, online on
A Hash Map for Graph Processing Workloads & a Methodology for Transactional Data StructuresChristina Peterson, Kenneth Lamar59m
PMap is a lock‑free, open‑addressing persistent hash map that uses C++11 compare_exchange_strong, in‑place key/value storage, per‑cacheline alignment via…
Talk in English at online on
Handling a Family of Hardware Devices with a Single ImplementationBen Saks01h 03m
Claims a single template implementation handles six Arduino Mega timers — two 8-bit and four 16-bit — by extracting differences into timer_traits with type…
Talk in English at Online D, online on
Back to Basics: Compiling and LinkingBen Saks01h 03m
Explains exactly how preprocessing, compilation, instantiation and linking produce object files and how inline and constexpr functions become allowed multiple…
Talk in English at Online E, online on
Conquering C++20 RangesTristan Brindle01h 06m
C++20 Ranges get concrete: author builds a reusable fibonacci view (infinite subrange from an iterator), implements a custom drop_last_while view that caches…
Talk in English at Online E, online on
Using Coroutines to Implement C++ Exceptions for Freestanding EnvironmentsEyal Zedaka01h 00m
Claim: implement C++ exceptions for freestanding environments using C++20 coroutines as the core mechanism, removing RTTI and avoiding unwind libraries. The…
Talk in English at online on
Why does std::format do that?Charlie Barto01h 01m
Explains why std::format is both fast and compact: implemented in msvc implementation based on {fmt}, it uses type erasure to pack arguments (avoiding…
Talk in English at A) Aurora C/D, online on
Asserting Your Way to Faster ProgramsParsa Amini38m
Empirical results on Bloomberg’s BDE libraries compare assume vs ignore semantics using clang 12.0.1 on x86: compile time and compiler memory use show no…
Talk in English at B) Summit 8/9, online on
C++20 on Xilinx FPGA with SYCL for VitisRonan Keryell01h 09m
Claims that a merged Intel oneAPI DPC++ and triSYCL implementation lets C++20/SYCL compile to Xilinx Alveo FPGA bitstreams, producing single-source C++ SYCL…
Talk in English at D) Valley 1, online on
Breaking Dependencies: Type Erasure - A Design AnalysisKlaus Iglberger01h 02m
Claims that replacing inheritance with type erasure significantly reduces coupling and simplifies maintenance by extracting operations from domain types into a…
Talk in English at online on
Multi Threading Model in Paradox Games: Past, Present and FutureMathieu Ropert01h 00m
Paradox documents an evolution from an older TBB-based, per-entity parallel_for model used in Europa Universalis IV Hearts of Iron IV and Stellaris to a…
Talk in English at online on
Software Engineering Is About TradeoffsMateusz Pusz01h 02m
Design decisions center on concrete compromises: exception safety vs performance, dynamic allocations, and standardization vs implementation effort. The talk…
Talk in English at online on
Cool New Stuff in Gdb 9 and Gdb 10Greg Law01h 07m
Shows exactly what’s new and what works: a debuginfod server to fetch separate debug files and source by build-id, improved conditional and tab-completing…
Talk in English at Online D, online on
What Classes We Design and HowPeter Sommerlad01h 05m
Claim: design classes by role not by topic — map Value, Relationship, Manager to the special members to write or omit. Concrete tools and patterns: use…
Talk in English at Online E, online on
Embracing (and also Destroying) Variant Types SafelyAndrei Alexandrescu01h 01m
Claims concrete tradeoffs: variant layout uses alignas plus a raw storage buffer and an active index, and destruction dominates performance so a poor…
Talk in English at online on
Back To Basics: Debugging TechniquesBob Steagall01h 05m
Claims concrete numbers: industry studies show 13 hours average to reproduce and fix and hundreds of millions of developer hours lost annually; recommended…
Talk in English at online on
"unit"_test: Implementing a Macro-free Unit Testing Framework from Scratch in C++20Kris Jusiak01h 01m
Claim: a working macro-free C++20 framework is implemented from scratch that makes the shown snippet compile and run. It uses C++20 features — modules concepts…
Talk in English at online on
C++20’s <chrono> Calendars and Time Zones in MSVCMiya Natsuhara58m
C++20’s chrono in MSVC implements calendrical types, clock_cast conversions, and time zone support; utc_clock tracks leap seconds and clock_cast accounts for…
Talk in English at Online E, online on
Custom Views for the Rest of UsJacob Rice46m
Implements an all_pairs view that lazily presents every ordered pair (except the diagonal) and uses it to compute pairwise gravitational forces for a toy…
Talk in English at online on
Code Size Compiler Optimizations and Techniques for Embedded SystemsAditya Kumar55m
Overview of concrete techniques and measured effects: compilers’ code‑size flags (-Os, -Oz), implemented in LLVM optimizations like hot cold splitting and…
Talk in English at Online E, online on
Embracing `noexcept` Operators and Specifiers SafelyJohn Lakos01h 04m
Shows concrete behavior: the noexcept operator inspects entire expression (including temporaries and destructors), how that forces copies in a vector push_back…
Talk in English at B) Summit 8/9, online on
Back to Basics: Smart Pointers and RAIIInbal Levi50m
Covers concrete rules: use make_unique/make_shared to avoid allocation+leak races, prefer factory APIs over taking smart pointers, and use…
Talk in English at online on
Using Clang LibASTMatchers for Compliance in CodebasesJonah Jolley01h 00m
Uses Clang LibASTMatchers and libtooling to find concrete instances where alarms are instantiated, distinguishing string literals versus config-member…
Talk in English at online on
Up to CodeDavid Sankel01h 02m
Worth watching if interest is in a concrete C++ migration case: an actual utility uldb_dump relink with a noisy logging regression, swapping an old lookup API…
Talk in English at A) Aurora C/D, online on
Finding Bugs Using Path-Sensitive Static AnalysisGabor Horvath52m
Path‑sensitive static analysis simulates execution, records path conditions and uses polyhedra‑based reasoning plus off‑the‑shelf solvers to prune infeasible…
Talk in English at C) Summit 7, online on
C++ Standard ParallelismBryce Adelstein Lelbach01h 00m
Roadmap claims: standard C++ gains portable parallelism via concrete pieces — execution policies let parallel algorithms dispatch to vendor libraries…
Talk in English at online on
Our Adventures With REST API in C++ : Making it EasyDamien Buhl01h 01m
Claims a usable C++ stack that avoids generated client stubs by parsing OpenAPI at compile time and producing real serializers and call wrappers. Uses…
Talk in English at online on
The Roles of Symmetry And Orthogonality In DesignCharley Bay59m
https://cppcon.org/ https://github.com/CppCon/CppCon2021 --- An essential aspect in designing C and C++ systems is to validate the execution flow and resource…
Talk in English at Online D, online on
Real-time Programming with the C++ Standard LibraryTimur Doumler01h 01m
Audio callbacks arrive every 1–10 milliseconds so worst‑case bounds matter; exceptions can be zero‑cost on many ABIs but Windows 32‑bit pays runtime cost…
Talk in English at online on
Down the Rabbit Hole: An Exploration of Stack Overflow QuestionsMarshall Clow01h 01m
Shows actual Stack Overflow questions and then measures solutions: benchmarks use a logger class that counts comparisons and swaps on libc++ and find…
Talk in English at online on
Value-oriented Design in an Object-oriented SystemJuan Pedro Bolivar Puente54m
An open-source cursor library claims to bridge value-oriented design and object-oriented UIs by providing type‑erasing cursors (lens-like views) that read…
Talk in English at online on
Template Metaprogramming: Practical ApplicationJody Hagins01h 03m
Tutorial shows concrete claims and tools not platitudes it demonstrates managing types as lists and maps and trading an upfront compile time cost for faster…
Talk in English at online on
Making Libraries Consumable for Non-C++ DevelopersAaron R Robinson58m
Concrete checklist of what breaks and what to ship: enumerate interop routes used (C API, COM, FFI, SWIG, JNI, P/Invoke, C++/CLI, cgo, Objective‑C runtime) and…
Talk in English at online on
GPU Accelerated Computing on Cross-Vendor Graphics Cards with Vulkan KomputeAlejandro Saucedo01h 02m
Shows concrete results: uses Vulkan and the Kompute framework to run a simple GPU‑accelerated ML kernel from scratch on AMD, Qualcomm, NVIDIA and mobile GPUs…
Talk in English at Online E, online on
Back to Basics: Templates (part 2 of 2)Bob Steagall01h 07m
Covers concrete rules and worked examples: implements a template min (with return-type deduction), builds a stack adapter plus a pointer-specialized partial…
Talk in English at B) Summit 8/9, online on
Zen and the Art of Code Lifecycle MaintenancePhil Nash01h 02m
Six concrete takeaways: define six orthogonal qualities (correctness, applicability, reliability, efficiency, evolvability, reasonability), use the type system…
Talk in English at Online B, online on
How Can Package Managers Handle ABI (In)compatibility in C++?Todd Gamblin58m
Compares how Conan, vcpkg and Spack handle ABI, demonstrates a solver rewrite using clingo (answer set programming) that reasons over compiler, target and…
Talk in English at Online E, online on
Units Libraries and Autonomous Vehicles: Lessons from the TrenchesChip Hogg01h 02m
Three years of production use across Uber ATG and Aurora show units libraries do catch mismatches but their primary win is automating the heavy manual tracking…
Talk in English at C) Summit 7, online on
The Unit Tests Strike Back: Testing the Hard PartsDave Steffen01h 02m
Unit testing often breaks down into a plan A that vaporizes and a sequence of pragmatic fallbacks: use mocks or dependency injection, make external services…
Talk in English at online on
Evolving a Nice TrickPatrice Roy56m
A concrete evolution: a generic "close enough" comparator is implemented from C++98 to C++20, starting with tag dispatching and hand‑rolled type traits that…
Talk in English at online on
Building an Extensible Type Serialization System Using Partial Template SpecializationPejman Ghorbanzade55m
A compact, pragmatic survey that builds and demos an extensible type-serialization prototype on top of FlatBuffers, showing how partial template specialization…
Talk in English at online on
Combining Co-Routines and Functions into a Job SystemHelmut Hlavacs58m
Claims a working C++20 job system called Vienna Game Job System (VGJS) that schedules both co-routines and plain functions, supports tagged phase scheduling…
Talk in English at online on
C++23 Standard Library PreviewJeff Garland01h 00m
C++23 delivers concrete changes: ranges gain zip and fold views plus starts_with and pipe customization; formatting adds std::format compile-time checks and a…
Talk in English at A) Aurora C/D, online on
Back to Basics: Algorithmic ComplexityAmir Kirsh, Adam Segoli Schubert55m
Defines big‑O and counts loops to give concrete claims: amortized O(1) for vector::push_back with exponential growth of capacity; std::nth_element/quickselect…
Talk in English at online on
Dynamically Loaded Libraries Outside the StandardZhihao Yuan55m
Explains practical techniques for using dlopen/LoadLibrary and tools like dumpbin/objdump and Application Verifier to diagnose real problems: delay-loading can…
Talk in English at Online D, online on
Warning: std::find() is Broken!Sean Parent01h 42m
Claim: std::find’s specification omits the domain of equal so behavior depends on hidden preconditions, producing divergent results for cases like NaN not…
Talk in English at A) Aurora C/D, online 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.