I still feel like a beginner in Clojure. One of the things with Clojure is that you nearly always realise later that there was an easier way to do it. It can be frustrating, but it's a sign of the sophistication of Clojure that you keep running into functions that already do what you wanted.<p>P.S. check out the frequencies function. There are a large number of higher level cOnstructs on top of reduce.<p>P.P.S. good article :)