Transducers is a powerful functional abstraction included with Clojure, a popular dialect of Lisp that runs on the JVM. They are generally faster, more reusable and composable than other functions for collection processing. This tutorial, after introducing the functional foundations, presents real-world examples and best practices. The lab at the end of each section should give you an opportunity to practice what we’ve learned.
Attendees will work on an example project using Clojure Transducers. We'll see debugging techniques, custom transducers and how to use them in parallel on multiple cores. The tutorial is structured to enable attendees to understand transducers and use them in their project.
This tutorial is aimed at people with basic Clojure understanding. Previous experience with a functional language is also useful but not required.
Participants should bring their laptop. The tutorial files will be distributed at the beginning of the session, including slides and labs. Please sign up mailing list email@example.com so that your question before or after tutorial will be answered by the tutors.
Renzo Borgatti is a software engineer with many years of experience. He used a variety of languages throughout his career and got interested in Clojure around 2010. He's author of "Clojure Standard Library, Annotated Reference" book by Manning and the "Clojure Pills" screencasts on YouTube. He currently works for uSwitch, an online comparison service company based in London.
Nick Ogden is a software engineer at uSwitch.com. He has more than eight years of software development experience including aeronautics, real-time video streaming, and web. Nick also has three years experience of developing commercial Clojure products. He contributes to Clojure Ring library, and he is the author of Clojure multimedia library.