> Becoming a professional Haskell and Erlang developer really shifted my view on OOP (let OOP denote class based OOP as found in Java or C++).
Did you have many years experience with Java/C++ beforehand?
Did you have many years experience with Java/C++ beforehand?