How does Reactive Framework differ from F# Events?
f#, reactive-programming
Solution
I think there are two main differences:
Firstly, there is a difference between the `IEvent<'T>` interface (and functions in the `Event` module) and the `IObservable<'T>` interface (used by functions from the `Observable` module and Reactive Fx). The difference has been discussed on SO earlier.
Reactive Framework is a more complex library, so it implements many combinators that are not available in F# in `Observable` or `Event` modules (although there is a open-source project that adds many of them)
The summary is, you should prefer functions from the `Observable` module. If it has everything you need, there is no need for Reactive Framework. If it does not, then you'll need either Reactive Framework or MiniRx (which, I believe, is sometimes more efficient too).
The F# `Event` module dates back to 2006, so I think Reactive Framework is clearly inspired by that, but it does not fully replace the F# functionality (mainly because it is not standard part of .NET or F# core).
Problem
If I'm familiar with F# events already, and I don't plan to have too much C# interop, are there significant reasons to consider using the Reactive Framework?