You first learned about Rx on C9. We’ve led you through the basic concepts of reactive programming to the deep mathematical foundation behind Rx (interface duality). By now, you should understand that IObservable is the dual of IEnumerable. Today, you will learn some new concepts (for many of you) in addition to the introduction of Rx’s newest interface, IQbservable, the dual of IQueryable. In effect, the addition of IQbservable completes the interface puzzle within Rx. But what does this mean?
The great Bart De Smet takes us through the fundamentals and specifics behind this new interface, which ships in the latest version of Rx. Most of the time is spent at the whiteboard. There’s also a short demo at the end of the conversation. Here’s the flow:
Whiteboarding:
- Expression trees recap (lambdas convertible to either anonymous methods or expression trees)
- How LINQ to Objects versus LINQ to SQL works, introducing IQueryable<T>
- Look at the Queryable extension methods and how they stitch expression trees together
- Differences between IQbservable<T> and IQueryable<T> (mainly simplification)
- Extended role of IQbservableProvider compared to IQueryableProvider
- Synergy between IQueryable and IQbservable (ToEnumerable/ToObservable “sideways” conversion)
- What operators are available (answer: 99% – explain why that 1% is omitted)
Demo:
-
Sample observable LINQ provider (LINQ to WQL)
Put your thinking caps on, turn up the volume, sit back, and learn. Erik Meijer and team are innovating at a level we haven’t seen in a while around here. Rx is profoundly evolving and taking LINQ along for the ride. Incredible work!
Enjoy this latest episode of Going Deep. Ask questions. Bart et al. will answer them here and on the Rx forums.
Most C9ers will probably have watched a video or two of Erik and/or his team members talking about Rx. In these videos, we can see some great samples of how to use Rx. But how does Rx play out when used in a real world scenario? 
Today, we released a new version of Reactive Extensions for .NET.
When Sven Groot was in town a while ago (this summer?) we dropped by Erik Meijer’s world and got a look at what he and his team of superdevelopers are up to (thus there really is no out-of-date property of this fun and insightful interview that is as off-the-cuff as it gets: heavy Channel 9
With the recent release of the
Jafar explains how the
The Rx team has received a lot of questions about Rx and concurrency, thread-affinity, timers and performance. In this video, Wes explains the major changes in the latest release of Rx.