Introduction to Systematic Program Design Part 1 - some Clojure examples