Rethinking Object-Oriented: Clojure and the Expression Problem
ÜberConf
Denver · July 12 - 15, 2011
About this Presentation
What is the Expression Problem? The question is far from academic: any programmer working in mainstream object-oriented languages is bound encounter it. As a young language on the JVM, Clojure has the opportunity to step back from mainstream approaches to object-oriented design, and get back to core concepts like type and polymorphism. Clojure, while not an object-oriented language itself, offers features that can achieve the same goals as OOP with greater flexibility.
This talk will explain what the expression problem is, why it matters, and how Clojure's Multimethods, Protocols, and Datatypes can help solve it.

Clojure/core
Stuart Sierra is an actor/writer/coder who lives in New York City. He is a member of the Clojure/core team at Relevance, Inc. Stuart is the co-author of Practical Clojure (Apress, 2010). He received an M.S. in Computer Science from Columbia University and a B.F.A. in Theatre from New York University.