First, Last, Contains etc… can be extremely dangerous (yet extremely useful :))

Most of the operators in the set of Observable extension methods are operators that return an IObservable. Some of the operators however return something else, such as First, Last, Contains etc… These operations are blocking operations, they block the current thread to wait for a specific set of messages to come in on the IObservable…


What’s different about the 3 versions of Rx? Part 3: .NET 3.5 SP1

Two days ago I kicked of this 3 part series by describing what is unique to Rx on Silverlight 3.Yesterday followed that up by I talked about Rx specific features when running on .NET 4 Today I’ll complete the series by talking about what Rx offers on .NET 3.5 SP1 Watch how Rx makes Asynchronous…


Amb, Materialize and Dematerialize

Paul blogs about our lack of in depth documentation on some cryptic api names. So here is some description of the names and behavior of Amb, Materialize and Dematerialize. Amb’s name comes from a long history, it was named by John McCarthy the inventor of LISP in 1961. It stands for Ambiguous, meaning that the result…


What’s different about the 3 versions of Rx? Part 2: .NET 4

Yesterday I talked about Rx specific features when running on Silverlight 3 in part one.Today I’ll focus on .NET 4 Beta 2. Watch how Rx uses the new covariance/contravariance feature exposed by C# in .NET 4


Reactive Extensions for .NET & Silverlight released!

As we released Rx today on DevLabs, I’m finally able to blog a bit more about the Rx technology. I’ll kick it off with 3 screencasts on the differences between the 3 different versions of Rx: Rx for .NET 3.5 SP1 Rx for Silverlight 3 Rx for .NET 4 Beta 2 Today I’ll start with…


My solutions to the Reactive Framework Tripple-click puzzle

Here are two solutions I wrote to the puzzle I posted earlier this week. The first version is very imperative and uses the Do operator to side effect, it then uses variables captured in the closure to track its state. This one you have to be careful with to make sure to add the ToSubject…


System.Reactive Puzzle followup

Steffen has already posted two beautiful solutions. As often happens with specs, I was not detailed enough about what I want the behavior of the signature I provided to be: I meant multiClickSpeedInMilliSeconds to be the total time between the first and the Nth click. Steffen’s implementation assumes it is the time between each two…


System.Reactive puzzle

After working on the Reactive Framework with Erik, Wes and the rest of our team for over a year, it is great to see  that the word about System.Reactive is out (as described here, here, here and here). I thought it might be fun to post a little puzzle challenge showing the power of the Reactive…