Getting started with FRP
FRP is simply reactive programming using functional programming style.
EventStreams and properties (don't get these confused with object properties) are the building blocks of FRP. Let's look at an overview of what both these terms mean.
EventStreams
An EventStream represents a stream of events. Events in an EventStream may happen at any time and need not occur synchronously.
Let's understand EventStreams by comparing them to events in an event-driven pattern. Just like we subscribe to events in an event-driven pattern, we subscribe to EventStreams in FRP. Unlike events in event-driven programming, the power of EventStreams is that they can be merged, concatenated, combined, zipped, filtered, or transformed in any number of ways before you handle and act on the events.
In functional programming, data is immutable, so merging, concatenating, combining, zipping, filtering, or transforming an EventStream creates a new EventStream instead of modifying the existing one.
Here...