Skip to content

Instantly share code, notes, and snippets.

@amalloy
Last active December 14, 2015 12:18
Show Gist options
  • Save amalloy/5084918 to your computer and use it in GitHub Desktop.
Save amalloy/5084918 to your computer and use it in GitHub Desktop.
(defmulti group-data :group-by)
(clojure.tools.macro/macrolet [(impl [key expr]
`(defmethod group-data ~key [kvs#]
(->> (:data kvs#)
(group-by (fn [kv#]
(let [~'date (:time kv#)]
~expr))))))]
(impl :day (str (month date) "-" (day date) "-" (year date)))
(impl :month (str (month date) "-" (year date)))
(impl :year (year date)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment