Paul Krugman’s recent discussion of the debate between “freshwater” and Keynesian economists reminds me of the debate between functional and object-oriented programming language researchers. In Krugman’s review of Justin Fox’s excellent The Myth of the Rational Market
he writes:
One of the great things about Fox’s writing is that he brings to it a real understanding of the sociology of the academic world. Above all, he gets the way in which one’s career, reputation, even sense of self-worth can end up being defined by a particular intellectual approach, so that supporters of the approach start to resemble fervent political activists — or members of a cult.
This is certainly true in the programming language community! A faculty-members who’s career has focused on metatheory of functional programs needs to believe that functional programming is the one right and true path. Object afficianados suffer from the same affliction, but it is somewhat less common among them because they can fall back on industry applicability to justify their work.
In my opinion, these debates are immensely silly for two reasons. Intellectual frameworks, like software process, is immensely important and can dramatically alter the results of your endeavor. Secondly, we should not focus on debating, but instead on resolving debates with sound evidence. With respect to programming languages this means collecting empirical data on how programming language choice affects student learning, programmer thinking and productivity, software reliability and maintainability, etc. Designing experiments to evaluate programming languages is very hard, but most programming language research is also hard … and less important.