LambdaCube 3D (http://lambdacube3d.com) (GitHub (https://github.com/lambdacube3d), Blog (https://lambdacube3d.wordpress.com/)) is a domain specific language and library that makes it possible to program GPUs in a purely functional style.
Csaba Hruska (http://www.meetup.com/London-Haskell/members/9805192/), the main author of LambdaCube 3D will give an overview and they plan some live coding and, if there is time, a coding dojo as well.
They have been (sporadically) working on LambdaCube since 2009, with it originally being intended as a drop-in replacement for Ogre3D (http://www.ogre3d.org/). Early on, it was submitted it to the Jane Street Summer Project program and ended up as a finalist. A monadic layer was added but trying to shoehorn an imperative API into a purely functional language felt like a dead-end.
So, back to the drawing board, taking inspiration from GPipe, a purely functional model of the rendering pipeline was created. The goal was an independent DSL, but it started life as a Haskell EDSL. In 2013 LambdaCube Intermediate Representation (IR) was introduced on the path to the independent DSL. In 2014, work on the actual DSL started and Péter Diviánszky (http://www.meetup.com/London-Haskell/members/9222483/) joined the team. In the last few months have been spent building the online editing environment.
They are now on a European Tour (http://lambdacube3d.com/), come and catch them as they pass through London!