Yes, this sort of nested destructuring is pretty hard to read and not actually all that common in Clojure code. Also, part of the issue here is that the basic
wrap-params middleware produces
string keys so most folks use the
wrap-keyword-params middleware instead.
If the keyword params middleware is used, you'd be more likely to see this:
The equivalent with the original
wrap-params would be:
We do
(my-map "string") rather than
(:some-key my-map) -- although
(my-map :some-key) would work, it's just not as idiomatic.
Note also that
:use is frowned on these days -- that Gist is
very old! -- and you'd normally see a
:require .. :as .. and code would then use the namespace alias when referencing functions.
So, bottom line, that Gist is very old and pretty much no one writes Clojure like that (partly because it's harder to read).