There is a set of ideas that is traditionally considered the hallmark of OOP - abstraction, encapsulation, inheritance and polymorphism. Clojure, while being a functional programming language, has adapted these ideas to fit the functional programming paradigm, in a way that merges the best of two worlds. In this talk I will present this adaptation, and show how it still possible to use the powerful aspects of OOP, while enjoying doing FP, Clojure style.
Speaker: Yoav Rubin is a software engineer in IBM Research - Haifa, with interest ranging from Java and web technologies through programming paradigms all the way to neuroscience and laser microscopy. During fall semester, 2011, Yoav lectured the course "Functional Programming on the JVM" in Haifa University.