Learning the syntax of a new language is easy, but learning to think under a different paradigm is hard. This session from ThoughtWorks Architect Neal Ford helps you transition from being a Java writing imperative programmer to a functional programmer, using Java, Clojure and Scala for examples. This session takes common topics from imperative languages and looks at alternative ways of solving those problems in functional languages. As a Java developer, you know how to achieve code-reuse via mechanisms like inheritance and polymorphism. Code reuse is possible in functional languages as well, using high-order functions, composition, and multi-methods. Neal takes a variety of common practices in OOP languages and show the corresponding mechanisms in functional languages.
Filmed in front of a live JAX audience