Arthur O'Dwyer
where else to find them
linkedin:arthur-odwyer
what they talk about
all 7 in the filters
where they keep going back
on a stage with
never shared a talk
who talks about the same things
- Vittorio Romeo27 talks
- Andrei Alexandrescu27 talks
- Björn Fahller31 talks
- Jonathan Müller37 talks
- Alisdair Meredith22 talks
- Eduardo Madrid10 talks
| title | conference | date |
|---|---|---|
| Back to Basics: Algebraic Data Types | CppCon 2020 | 2020-09-14 |
C++17 algebraic data types are shown as concrete tools: std::pair and std::tuple are product types with predictable memory footprint and padding; std::variant… | ||
| Back to Basics: Concurrency | CppCon 2020 | 2020-09-14 |
Explains concrete C++ mechanisms: std::thread starts immediately, data races on plain variables are undefined behavior, atomics avoid UB for simple counters… | ||
| Back to Basics: RAII and the Rule of Zero | CppCon 2019 | 2019-09-15 |
Explains why RAII prevents leaks and double-frees using a hand-built NaiveVector that first leaks, then double-deletes, then is fixed with a destructor, copy… | ||
| Back to Basics: Type Erasure | CppCon 2019 | 2019-09-15 |
Explains how to implement type erasure step-by-step: start with representation and behavior split using void plus function pointers, build a reference form (no… | ||
| Back to Basics: Lambdas from Scratch | CppCon 2019 | 2019-09-15 |
Explains lambdas as compiler-generated unnamed class objects with an operator() and shows assembly via Godbolt to prove it; walks concrete examples from C… | ||
| Back to Basics: Smart Pointers | CppCon 2019 | 2019-09-15 |
Explains how C++ smart pointers actually work: unique_ptr holds a raw pointer and a deleter (used to wrap C APIs like OpenSSL), shared_ptr stores a separate… | ||
| "Mostly Invalid": flat_map, Exception Guarantees, and the STL | CppCon 2019 | 2019-09-15 |
Shows concrete failures: a throwing comparator or hasher breaks priority_queue and unordered_set invariants and yields a mostly invalid state where find and… | ||
| Boost.Blockchain: A new business model for open source | C++Now 2019 | 2019-05-05 |
Proposes Boost.Blockchain: a header-only monetization scheme that embeds a consteval compile-time miner into headers using constasio and C++26/29 features… | ||
| Trivially Relocatable | CppCon 2018 | 2018-09-23 |
Argument: certain types can be treated as bitwise-movable so relocation becomes a single memcpy instead of move-then-destroy loops. Demonstration: compiler… | ||
| Concepts As She Is Spoke | CppCon 2018 | 2018-09-23 |
Clear-eyed tour of C++2a Concepts syntax and semantics, with concrete compiler status (GCC supports the Concepts TS via -fconcepts, Clang has a fork, MSVC… | ||
| An Allocator is a Handle to a Heap | CppCon 2018 | 2018-09-23 |
Claim: an allocator is not a heap but a cheap handle to a heap: std::pmr::polymorphic_allocator holds a pointer to a std::pmr::memory_resource and copying the… | ||
| Return Value Optimization: Harder Than It Looks | CppCon 2018 | 2018-09-23 |
Explains where the return slot lives in typical calling conventions, why C++03/C++11/C++17 rules sometimes elide, sometimes move, and sometimes silently copy… | ||
| An allocator is a handle to a heap | C++Now 2018 | 2018-05-06 |
Claims that an allocator can be a true handle to a heap versus merely carrying state and gives concrete code and runtime behavior: implements a PMR-like… | ||
| SCM Challenge: Unique Words | CppCon 2017 | 2017-09-24 |
A coding puzzle asks to print numbers up and down without repeated identifiers so a first approach is a tokenizer that enforces uniqueness, which forces weird… | ||
| “dynamic_cast From Scratch” | CppCon 2017 | 2017-09-24 |
Builds a complete, bug‑free reimplementation of dynamic_cast using the Itanium C++ ABI and a small set of nonportable helpers, exposes where compilers waste… | ||
| A Soupçon of SFINAE | CppCon 2017 | 2017-09-24 |
A compact cookbook of concrete SFINAE recipes showing what compiles and what breaks: using void_t trick and decltype(declval()) for expression SFINAE to… | ||
| ADT puzzler | CppCon 2016 | 2016-09-18 |
Code shows calling f<0(...) that the compiler parses as f < 0 (a comparison) because the identifier isn’t known as a template, so template argument syntax… | ||
| “Template Normal Programming (part 1 of 2)” | CppCon 2016 | 2016-09-18 |
Covers practical rules and gotchas for everyday C++ templates: how to use and test templates with __PRETTY_FUNCTION__, when to prefer variable templates or… | ||
| “Template Normal Programming (part 2 of 2)" | CppCon 2016 | 2016-09-18 |
Explains how to get real-world template code to behave: implement partially specialized function behavior by delegating to a class-template is_pointer_impl… | ||
| Lambdas from First Principles: A Whirlwind Tour of C++"" | CppCon 2015 | 2015-09-21 |
Claim: lambdas are just syntactic sugar over ordinary C++ constructs and compile into anonymous functor classes with the same codegen as hand‑written classes… | ||
| C++11 in the Wild: Techniques from a Real Codebase | CppCon 2014 | 2014-09-07 |
Concrete takeaways: Auto macro implements scope‑exit RAII with lambdas, token‑pasting and __COUNTER__, compiles down to inlined, zero‑overhead code… | ||
| nothing matches | ||