Monads in Modern C++
Talkat CppCon 2023 · on Thursday, 2023-10-05· at 09:00· Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard·
summary
Claims that monadic patterns make C++ clearer and safer are backed by concrete work: C++23 adds monadic operations, Bloomberg applies optional monad and vector monad to reduce null checks and loop boilerplate in a multiasset risk system that prices ~1–2 billion derivatives daily, and an internal maybe‑view library lives in production for ~2 years. Implementations use ranges, std::optional/std::expected, futures and a proposed p1255 nullable view to compose transform then join pipelines and they report the approach works in practice.
AI-written summary · about
chapters (9)
- 0:00Monads in C++ intro
- 1:29Motivation for monads
- 5:39Functors theory
- 17:13Functors vs monads
- 24:15Monads with examples
- 32:53Monads in the C++ Standard Library
- 43:46Monadic library case study
- 57:22Native maybe types matter
- 1:04:17Q&A
related talks
54mMonadic Operations in Modern C++: A Practical Approach
58mMonads in Chains
48mMonads and Monoids: from daily java to Big Data analytics
33mApplying Functional Programming Patterns
58mMonoidal Catamorphisms
53mC++ Horizons
46mChasing Arrows, in categories containing functors and monads
52mAdjunctions in Everyday Life
