When comparing reactive-banana vs reflex, the Slant community recommends reflex for most people. In the question“What are the best Functional Reactive Programming (FRP) libraries for Haskell?” reflex is ranked 1st while reactive-banana is ranked 2nd.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Asynchronous data flow
Unlike monadic FRP implementations, operations on reactive-banana's behaviors aren't inherently sequential. This allows more opportunities for laziness, parallelism and similar optimizations.
Pro The network is expressed via pure functions
Rather than being constructed inside a monad or arrow, reactive-banana behavior networks are a set of mutually-recursive pure functions. Events and behaviours can easily be composed with each other to form new ones. This style encourages the types to be written down explicitly, which in turn makes the code easier to understand.
Pro Easy binding to GUI libraries
reactive-banana
has existing interfaces for wx and SDL, and wrapping other GUIs is extremely straightforward.
Pro It supports fully dynamic data flow using higher-order primitives
Pro It has a fairly direct implementation compared to many of the rest.
Pro Fully deterministic
Pro Supports both Continuous and Discrete time models
Reflex requires that time be ordered and linear. Within that constraint, it can be specialized to real timestamps or stepped sequences as needed.