GridScale: a Journey from Object-Oriented to (More) Functional Programming

London, United Kingdom

This talk introduces GridScale, a free and open source Scala library providing access to distributed computing environments for applications running in the Java Virtual Machine (JVM). GridScale was one of our first project coming from a Java and Object-Oriented background. As such, it bears the scars of an OO design. Over the years, our Scala-fu has evolved towards a more functional style. GridScale’s design based on the Cake pattern and mix-ins showed not flexible enough for the way we wanted GridScale to evolve. We’ll first show you why GridScale’s Cake-based design didn’t work for us. Then we’ll walk you through the ongoing refactor based on the Free Monad and the tools we’ve built to make the pattern simple as part of a new project called FreeDSL.