Object Oriented Programming

The only experience I have with it is with Java. In the beginning, like almost everyone, I was sold on it. Read a tons of books, learned the design patterns, learned testing, mocking, etc.

After learning Clojure I don't see the point of OOP anymore. The paper Out Of The Tar Pit argues that OOP suffers from state and control derived complexity.o