This one confused me when I'd accidentally passed a list (returned by a function) in to update-in
instead of a vector.
Example:
`
some-app.core=> (update-in [:a :b :c] [1] name)
[:a "b" :c]
some-app.core=> (update-in '(:a :b :c) [1] name)
NullPointerException clojure.core/name (core.clj:1518)
`
Similar result if passing in another function; for example:
`
some-app.core=> (update-in ["a" "b" "c"] [1] str/capitalize)
["a" "B" "c"]
some-app.core=> (update-in '("a" "b" "c") [1] str/capitalize)
NullPointerException clojure.string/capitalize (string.clj:199)
`