Tech Off Thread

11 posts

IObservable, IObserver, [Observable]

Back to Forum: Tech Off
  • exoteric

    I wonder what the reasoning is for not including Observable (Reactive Extensions for .Net) as part of .Net 4.0? Clearly one would want these combinators to start using LINQ or one would most likely build them oneself. I was browsing for Rx as part of .Net 4.0 beta 2 and only found the interfaces. Parallel Extensions for .Net are already part of .Net. I suppose it is still being worked out what combinators to include and specifically how to interact with the parallel extensions, hmm...

    A great example of this is the Reactive Framework (RX), which is a library of extension methods (not included as part of .NET 4) that implement the LINQ Standard Query Operators and other useful stream transformation functions for IObservable<T>.

    On the other hand, building this stuff sounds fun. Think of implementing task preemption using both "continuous" (hard) and discrete limits.

  • Dexter

    My understanding is that RX came to late to be included in .NET 4 so only the "essentials" will be included. The interfaces are a must have because you don't want everyone re-creating these interfaces. The rest can be distributed out of band for now.

  • Adam​Speight2008

    Observable collection is in the beta version of visual basic with the LINQ extensions.

    Observer I haven't found yet, but the Interface is there.

  • exoteric

    AdamSpeight2008 said:

    Observable collection is in the beta version of visual basic with the LINQ extensions.

    Observer I haven't found yet, but the Interface is there.

    As noted, only IObservable<T> and Observer<T> is in the framework, not Observable which carries all the extension methods of interest - e.g. to convert events. Next exercise is to create them oneself. On that task now...

  • GamlerHart

    exoteric said:
    AdamSpeight2008 said:
    *snip*

    As noted, only IObservable<T> and Observer<T> is in the framework, not Observable which carries all the extension methods of interest - e.g. to convert events. Next exercise is to create them oneself. On that task now...

    Sadly if often unavoidable to implement something that will be included in the future. For example all those complex number implementation which are 'obsolete' in .NET 4. (Afaik the BCL in 4 has a complex-number implementation, right). Or in my project I've some ugly 'cast'-hacks for generics wich are useless with co- and contra-variance. =(

     

    Anyway, at least the foundation is there so you can make your code Rx-ready =)

  • stevo_

    exoteric said:
    AdamSpeight2008 said:
    *snip*

    As noted, only IObservable<T> and Observer<T> is in the framework, not Observable which carries all the extension methods of interest - e.g. to convert events. Next exercise is to create them oneself. On that task now...

    Don't they have a codeplex site or something where you can download them? it seems highly unlikely they wouldn't at least release the source code for the extensions.

  • exoteric

    stevo_ said:
    exoteric said:
    *snip*

    Don't they have a codeplex site or something where you can download them? it seems highly unlikely they wouldn't at least release the source code for the extensions.

    The Silverlight Toolkit perhaps

  • Charles

    exoteric said:
    stevo_ said:
    *snip*

    The Silverlight Toolkit perhaps

    Stay tuned! Smiley
    C

  • exoteric

    Charles said:
    exoteric said:
    *snip*

    Stay tuned! Smiley
    C

    Staying tuned! Smiley

  • J.Van.Gogh

    exoteric said:
    Charles said:
    *snip*

    Staying tuned! Smiley

    your patience is rewarded Smiley

    http://msdn.microsoft.com/en-us/devlabs/ee794896.aspx

  • exoteric

    J.Van.Gogh said:
    exoteric said:
    *snip*

    your patience is rewarded Smiley

    http://msdn.microsoft.com/en-us/devlabs/ee794896.aspx

    Yes! I will play with it this weekend, in time for my birthday (already downloaded)! Big Smile

    I've been following Rx closely.

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.