Orleans: A Framework for Scalable Client+Cloud Computing

Sign in to queue

The Discussion

  • User profile image
    Kyrae

    Cool stuff. 

    Can't wait to see it "finished" and integrated with LINQ/Rx/"await".

  • User profile image
    felix9

    actually the name 'AsyncValue<T>' looks more like the natural type name for async/await pattern than 'Task<T>', just a name though Devil

  • User profile image
    Kyrae

    @felix9: Let's not resort to name calling ... but would be more fun if they actually called it Promise<T> Wink

    Also the distinction between AsyncCompletion and AsyncValue<T> seems not needed: could just use AsyncValue<Unit> for that. I think that getting someone in the team with more functional programming background would greatly help the project (this is in no way saying the project is bad). 

  • User profile image
    fwaris

    F# async{} workflow (monad) and MailboxProcessor<'T> do much of what is being described here - except for retry of messages.

    The F# workflow syntactic sugar makes writing async code almost like synchronous code.

  • User profile image
    rpandya

    @fwaris: We're working on switching over to the C# vNext [*] async pattern - we've been working on Orleans since long before it was available (even internally), so we had to implement our own version of promises. Once we switch, the F# async pattern will be very convenient, and F# would be a great programming language for writing grains. There's already another project in XCG that uses Orleans grains written in F#.

    [*] edited: I earlier called this .NET 4.5, but realized it's been called a variety of names, so I'll stick with Anders' "C# vNext"

  • User profile image
    felix9

    .NET 4.5 ..... oooh

  • User profile image
    Charles

    , felix9 wrote

    .NET 4.5 ..... oooh

    This was a typo, as Ravi specified (see his edit). The Async feature will be available in the next versions of C# and VB.NET. You can do the math in terms of the numeric expression for their versioning...

  • User profile image
    felix9

    OK. Smiley

    But .NET 3.5 introduced C# 3.0 and VB9, so the version of the framework and languages are not always in sync, ahh they should though, the 3.5 thing caused lots of confusion. Tongue Out

  • User profile image
    Mike​Christian

    @felix9: I never really understood why 3.5 was not named 3.1.  The smaller increment always made more sense to me, no matter the rationalization for the 3.5 jump.  I must simply be getting crotchety, well before my time. Devil

    I've been watching Orleans with great anticipation, since hearing about it at TechFest 2009.  Thanks for publishing this video!

  • User profile image
    jacob

    Good post and a fantastic read. You have raised some valid points. Great work, keep it up. I love returning back to this site and reading the quality content you always have on offer. It was wery useful for college paper.

Add Your 2 Cents