Overview
This conference talk explores practical applications of monadic operations in modern C++ with real-world examples from commercial development. Discover how C++23's std::optional and std::expected, along with their monadic operations, can reduce boilerplate code when manipulating underlying values through computation chaining. Learn about API design principles, the separation between pure and impure contexts, and the advantages and disadvantages of using "optional" and "expected" patterns. Unlike many theoretical presentations on this topic, benefit from Vitaly Fanaskov's year-plus experience implementing functional programming approaches in a commercial internal library. The presentation includes practical code examples and useful tips that can be applied to your own C++ projects. Vitaly, a senior software engineer at reMarkable with over 10 years of experience and a PhD in Computer Science, shares insights particularly valuable for those interested in framework and library development, modern programming languages, and functional programming.
Syllabus
Monadic Operations in Modern C++: A Practical Approach - Vitaly Fanaskov - CppCon 2024
Taught by
CppCon