3 ms·
Having worked with both Redux and a "real" FRP implementation (Haskell's Reflex library), I wouldn't call Redux FRP. In Redux one explicitly, imperatively send
by nh2 7y ago
Having worked with both Redux and a "real" FRP implementation (Haskell's Reflex library), I wouldn't call Redux FRP.
In Redux one explicitly, imperatively sends messages to a top-level message dispatcher, which then invokes more imperative code.
This feels /very/ different to Reflex's folding over events, and transforming dynamic values with pure functions.
The API you use is pretty different as well; consider:
* https://github.com/reflex-frp/reflex/blob/develop/Quickref.md https://github.com/reflex-frp/reflex/blob/develop/Quickref.m...
* https://github.com/reflex-frp/reflex-dom/blob/develop/Quickref.md https://github.com/reflex-frp/reflex-dom/blob/develop/Quickr...
- proc0 7y agoCompletely agree Reflex is proper FRP. Redux does have some of the basics of FRP and you can stick to pure functions as well, which is limited by JS but not necessarily by the Redux pattern. I believe Redux is subset of FRP, that uses discrete commands instead of continuous function of time, and the time function can be made into descrete events for implementing commands. The rest builds on top of that.