Zentrope

Link

Rich Hickey Q&A by Michael Fogus

This sort of thing always used to make me want to start a revolution, but, alas, I always ended up being a 19th Century anarchist among south-sea islanders: harping against dehumanizing factory conditions when everyone else sees the bloody floor as a special kind of comfortable beach, each new IDE plugin as welcome as a pretty girl.

When we drop down to the algorithm level, I think OO can seriously thwart reuse. In particular, the use of objects to represent simple informational data is almost criminal in its generation of per-piece-of-information micro-languages, i.e. the class methods, versus far more powerful, declarative, and generic methods like relational algebra. Inventing a class with its own interface to hold a piece of information is like inventing a new language to write every short story. This is anti-reuse, and, I think, results in an explosion of code in typical OO applications.

Even though I use Scala with all its functional / type-safe possibilities, I’m somewhat trapped by the OO abstractions it makes natural. At my deepest levels of intuition, I’m certain the object oriented paradigm is a dead end. If it didn’t exist, over time, my code would get better and better. And by better, I mean I get more done with less effort in a more readable, debuggable way.

Posted on Thursday, June 9 2011. Tagged with: scalaoopclojurerich hickydespair
7
Notes
  1. gestationalab liked this
  2. catherineer liked this
  3. startede9 liked this
  4. zentrope posted this
Zentrope Keith Irwin

Plenty of tropes, not much Zen.

Ask me anything
Previous Next