I hereby claim:
- I am alexhall on github.
- I am alexhall (https://keybase.io/alexhall) on keybase.
- I have a public key ASAqRBJeuEw_1GUFIS4T-7cFTtGtTP_WvIWlksYN4zc7jwo
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
(defn unnest-keys [x] | |
(into {} (mapcat (fn [[k v]] | |
(if (map? v) | |
(map (fn [[k' v']] | |
[(str (name k) "." k') v']) | |
(unnest-keys v)) | |
[[(name k) v]])) | |
x))) |
;; internal helper function | |
(defn default-foo [] "Hello, world!") | |
;; public API | |
(def ^:dynamic *foo* default-foo) | |
(defn bar [] (*foo*)) | |
;; Usage | |
(bar) | |
(binding [*foo* #("Goodbye, world!")] |
user> (defmulti m type) | |
#'user/m | |
user> (defmethod m Comparable [_] "comparable") | |
#<MultiFn clojure.lang.MultiFn@49c1e1e7> | |
user> (defmethod m Number [_] "number") | |
#<MultiFn clojure.lang.MultiFn@49c1e1e7> | |
user> (m "a") | |
"comparable" | |
user> (m 7) | |
; Evaluation aborted (exception complaining about conflicting matches for Number and Comparable) |