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
20 weeks 4 days ago
20 weeks 4 days ago
20 weeks 4 days ago
42 weeks 5 days ago
47 weeks 21 hours ago
48 weeks 5 days ago
48 weeks 5 days ago
51 weeks 2 days ago
1 year 3 weeks ago
1 year 3 weeks ago