Skip to content

Reactive Programming: changing the world at Netflix, Microsoft, Slack and beyond!

Matthew Podwysocki at AngularConf

Duality

Erik Meijer's keynote argues that IObservable<T> and IEnumerable<T> are mathematical duals — push-based and pull-based collections that share the same shape with the arrows reversed. That single insight is what lets ReactiveUI use LINQ operators (Select, Where, GroupBy) over event streams, and is the reason WhenAnyValue(...).Select(...) reads like LINQ-to-Objects.

The full write-up: Meijer.duality.pdf.