FRP Yampa replacement implemented with Monadic Stream Functions.
Yampa is a popular Functional Reactive Programming (FRP) implementation that has been used extensively for all kinds of applications, including robotics and games.
Monadic Stream Functions are a new abstraction for data processors that combine arrows and monads. The library dunai provides a default implementation.
Bearriver (a tributary to the Yampa river) provides the same API as Yampa, but implemented using dunai underneath. The goal is to facilitate understanding what's different about Yampa, and other FRP and Reactive Programming libraries, by creating wrappers around dunai defined precisely by those differences.
Because dunai is particularly fast, especially with optimizations enabled, this implementation is faster than traditional Yampa for medium-sized and large applications.