FP + RP + OPP DP (Observer + Iterator) = FRP => RxJS
Everythink is a stream!
Stream pipeline (side effects postponed after => concern the consumer)
Abstract the notion of time
Decoupled Business Logic from View (so side-effect) => Separation of concerns
next*(error|complete)?
// Implementation Example
[const subscription =] stream$.timerInSeconds() // Producer
.interval() // pipeline
.map(x => x.value) // pipeline
.filter(x => x % 2 === 0) // pipeline
.take(10) // pipeline
.subscribe(val => console.log(val)) // consumer