Qconn

Reactive Extensions in the Cloud -- Clojure, Java, and All the REST of That

Reactive Extensions in the Cloud -- Clojure, Java, and All the REST of That

Location: 
Seacliff A/B
Time: 
Wednesday, 10:30am - 11:20am
Abstract: 

In bringing up Netflix's RxJava Clojure language adapter, I discovered parsimonious use for all of Clojure's agents, atoms, refs, futures, and promises. The only one of Clojure's concurrency constructs that didn't naturally arise in my application was Dynamic Var. Before this experience, I might have characterized Clojure's collection of concurrency primitives as a grab-bag; after, I realized that it's a minimal, complete set of interoperable constructs (physics analogy: a complete set of commuting operators).   In this live-coding talk, I walk through my discoveries in thematic contexts: growing and shrinking collections, implementing distinct and distinct-until-changed, working famous exercises. I end with speculations on mixing Rx with mini-Kanren (a.k.a., clojure.core.logic) and on hosting large reactive computations in the cloud.

Brian.Beckman's picture
Reverse chronological order. Principal Engineer, AMAZON, reactive frameworks. Principal Architect, MICROSOFT, Geospatial, Bing Maps. Symbolic and numerical computing frameworks, LINQ, Rx, functional programming. Physics of racing tires for Forza 1 and all game physics for secret project. Co-founded Biztalk and public-key crypto groups. Wrote SET protocol and optimizers for BBT. CALTECH-JPL: Wrote Time Warp Operating System. Atmospheric physics for Geodynamics and GPS, direct measurement of tectonic drift. PRINCETON: Photometry of faint galaxies in the Coma Cluster (the Dark-Matter problem).