The RxTeam last night announced the official release of the Rx Extensions (which has been called the Reactive Framework as well as the Rx Framework). Developers now have a suitable set of tools – complete with concurrency support – for tackling asynchronous computation scenarios that respond to UI- and UX-driven events (or anything else that you need to subscribe to).
We no longer have to use the IL-hacked version of the library that targeted the Win-friendly version of mscorlib.
If you haven’t used it or heard of it already, Rx is the baby of Erik Meijer, the brains behind Linq. The library is a collection of extension methods, interfaces and helpers that let us (subscribers) listen to events (publishers) in a Linq-friendly and developer-friendly way.
Above is the picture of Erik. I wanted to post this snapshot of the video to ensure that t-shirt was recorded for all of mankind in the future to witness. Assuming they will read this blog, that is…
The process of developing a standard library to encapsulate the long-standing Observer pattern went through many cycles between many teams. The result is a set of extensions that flow seamlessly through from what we already know about working with collections: the Linq methods we have been working with for the last few years have been ported over to the Observable bits.
In addition to that, some new helpers and methods were spawned from the process that served IObservable really well. Because it is the dual of IEnumerable, the team saw benefit to back-porting that functionality to original interface. Read another way: IEnumerable isn’t being left behind as the dumb older brother. The old dog is learning new tricks.
A lot of learning ahead, folks, get the bits and start playing!