the expected outcome
summary
Shows that std::expected in C++23 is a concrete, usable error type (extensions land in C++26) and demonstrates a complete roll-your-own expected plus Boost.Outcome interop. Covers specific APIs: and_then/transform/or_else plus X-invoke/X-coalesce and lazy variants, conversions to/from exceptions and out-params, and how to serialize errors. Builds coroutine integration that short-circuits on errors to mimic try/catch without exceptions. Reports performance: tiny happy-path overhead, much faster on error paths, and practical examples that compile and interoperate.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 3:33Traditional error handling problems
- 9:19Introducing expected
- 13:53Expected in C++23
- 18:34Predictable execution paths
- 21:08Idiomatic expected values
- 25:46Errors with or_else and fallback
- 28:38Interoperability of error handling
- 33:20Converting error types
- 38:56Advanced function composition
- 43:01Lazy evaluation with expected
- 46:01Expected and coroutines
- 51:38Summary
- 54:11Q&A
related talks
01h 37mIntroduction to proposed std::expected
46mFive Issues with std::expected and How to Fix Them
01h 01mExpect the Expected
59mTo err is human - error handling in C++26
01h 02mOption(al) is not a failure
56mThe Dawn of a new Error
55mMonadic Operations in C++23
01h 00mC++23: An Overview of Almost All New and Updated Features
