Functional reactive programming in C++
summary
Claims that C++ can do functional reactive design practically: compose transformations, avoid shared mutable state by message passing, and make components run concurrently or even in separate processes. Demonstrations include a tiny FRP dungeon and a GUI mouse demo with a movable red square, a blue follower that keeps state locally, stream forking, and a flat_map to emit interpolated points. Mentions libraries and approaches: RXCPP, actors/ZeroMQ and a planned KD framework; points out lazy sort and move-only APIs as concrete optimizations. Slides contain noncopyable illustrative code.
AI-written summary · about
chapters (20)
- 0:00Intro
- 1:47Elements of functional design
- 2:13Higher-order functions
- 5:24Word frequency in C++
- 9:54Purity and referential transparency
- 12:02Handling the program state
- 13:26Object-oriented design
- 19:47What is reactive?
- 20:22Reactive systems
- 21:38Lets try this again...
- 26:44Modify and pass on
- 27:52What is a source?
- 29:04Small demo
- 32:16Transforming the input
- 35:45Transformations with state
- 38:26Generating new events
- 39:34What are the benefits?
- 40:15Microservices?
- 42:03Libraries
- 43:04Answers? Questions! Questions? Answers!
related talks
35mFunctional Reactive Rust
01h 09mFunctional Programming in C++
58mThe Imperatives Must Go! [Functional Programming in Modern C++]
50mThinking Functionally in C++
31mFunctional programming guerilla in the land of Rust
59mFunctional Programming: data
01h 03mWriting sustainable software. The how and the what!
23mFunctional Programming in C++ (Run time vs Compile time types)
