Clojure core.async Channels
The ClojureScript support needs work but you can already express some incredible things, those familiar with channels in Go should be dropping their jaws that you can do this in the browser:http://gist.github.com/swannodette/5886048With timeout channels, the throttler is a beautiful 7 lines of clear code - compare to the Underscore.js imperative mess: http://underscorejs.org/docs/underscore.html#section-64I've been doing sophisticated JS UIs for 8 years now and had largely given up on ever being able to really manage async complexity -  neither JavaScript Promises nor ES6 generators provide this level of process coordination and clarity.Very exciting times.EDIT: Oh and don't forget you can pattern match on the result of a select (alt!) with core.match to get Erlang style matching http://github.com/clojure/core.match :) All this from libraries