User loginNavigation |
archivesNew tutorial blog on category theory for programmersI've started a new blog in which I'm attempting to explain category theory concepts to programmers, using JavaScript as the programming language---yes, I'm using a dynamically-typed imperative language for teaching category theory. Come join the discussion at http://jscategory.wordpress.com. Erik Meijer: Your Mouse is a Database - Rx and Modern Asynchronous ProgrammingPL icon Erik Meijer recently published an ACM article covering Reactive Extensions (aka Rx). As Erik notes in the article (emphasis mine) "the goal of Rx is to coordinate and orchestrate event-based and asynchronous computations such as low-latency sensor streams, Twitter and social media status updates, SMS messages, GPS coordinates, mouse moves and other UI events, Web sockets, and high-latency calls to Web services using standard object-oriented programming languages such as Java, C#, or Visual Basic." His conclusion: Web and mobile applications are increasingly composed of asynchronous and real-time streaming services and push notifications, a particular form of big data where the data has positive velocity. This article has shown how to expose asynchronous data streams as push-based collections of type IObservable (in contrast to pull-based collections of type IEnumerable) and how to query asynchronous data streams using the fluent API operators provided by the Rx library. This popular library is available for .NET and JavaScript (including bindings for prevalent frameworks such as jQuery and Node) and also ships in the ROM of Windows Phone. F#'s first-class events are based on Rx, and alternative implementations for other languages such as Dart7 or Haskell6 are created by the community. What do you think of the Rx approach to asynchronous computation? |
Browse archivesActive forum topics |
Recent comments
36 weeks 2 days ago
36 weeks 3 days ago
36 weeks 3 days ago
1 year 6 weeks ago
1 year 10 weeks ago
1 year 12 weeks ago
1 year 12 weeks ago
1 year 15 weeks ago
1 year 19 weeks ago
1 year 19 weeks ago