Data Structures in Clojure: Singly-Linked Lists – Macromancy