Earle Castledine: Painting by Functions - JSConf US Last Call

An evolutionary tale, beginning at the birth of the original graphics APIs - caught between the functional and imperative worlds. Low level, and difficult to learn, but lighting-fast and capable of spectacular results. You'll see: The original, horribly stateful, OpenGL API ...and the GLSL shaders that run on top of it: functional, and powerful, and often beautiful. OpenGL then spawned its JavaScript-enabled offspring, WebGL: impressive, but built on an arcane and unwieldy paradigm. It's available in all modern browsers - desktop and mobile - yet lies mostly dormant thanks to its stateful and scary API. But hark! The slow but unceasing rise of functional and reactive programming is the missing link - transforming WebGL into a slick and user-friendly powerhouse. You'll see: the stack-gl manifesto (and its core modules) gl-react and gl-react-native: adding stunning effects in a declarative manner UI widgets and components that are not possible with HTML5 Canvas and friends. ...all while wrangling it all with Rx.js streams.