Sign up for the KDAB Newsletter
Stay on top of the latest news, publications, events and more.
Go to Sign-up


Find what you need - explore our website and developer resources
8 June 2026
Functional programming isn’t just for Haskell or Lisp — many of its ideas have been part of C++ for years, and modern features like lambdas, std::function, ranges, and std::variant make those ideas easier to use than ever.
In this episode of 'The Curious Developer', Jesper Pedersen talks with Ivan Čukić about how to apply functional programming techniques in everyday C++ without switching languages. Ivan explains what “functional programming in C++” really means, how higher‑order functions show up in the standard algorithms, and how concepts like immutability and sum types can make code safer and easier to reason about.
You’ll learn:
Ivan also shares insights from his book, Functional Programming in C++, why its core ideas still apply as the language evolves, and why many “functional” techniques are simply examples of good, modern C++ design. This episode is ideal for developers who know some C++ and want to write clearer, safer code by borrowing proven ideas from the functional programming world—without leaving C++.
Links
Chapters
00:00 Welcome
01:39 About his book on functional programming
03:22 Why functional programming in C++?
04:15 What is functional programming
07:56 How does functional programming fit in with object oriented programming?
10:20 Immutable data
13:39 Example of functional programming
17:30 Performance
19:46 A more exotic example - sumtypes
27:30 Is C++ harder than Haskell for functional programming?
28:23 Wish: Pattern Matching
30:40 Switching on strings....
34:05 What is on the backside on your book.
All 'The Curious Developer' videos
About the guest
Dr Ivan Čukić is the author of "Functional Programming in C++" (Manning Publications), a KDAB and KDE developer, a C++ trainer and consultant as well as a Free/Libre Software enthusiast.
Stay on top of the latest news, publications, events and more.
Go to Sign-up
Learn Modern C++
Our hands-on Modern C++ training courses are designed to quickly familiarize newcomers with the language. They also update professional C++ developers on the latest changes in the language and standard library introduced in recent C++ editions.
Learn more