Rich Hickey Q&A by Michael Fogus appears in Code Quarterly, The Hackademic Journal.
The interview is entertaining but I mention it because of Hickey’s remarks on associative models, which reads in part:
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. Clojure eschews this and instead advocates a simple associative model for information. With it, one can write algorithms that can be reused across information types.
Topic maps are about semantic reuse.