Just a minor cavil: does not *STRING-TO-KEY* (or maybe *IDENTIFIER- NAME-TO-KEY*) seem like a better name for this variable?
Rationale: I would say that the -JSON- and -LISP- parts of the original *JSON-SYMBOLIZE-LISP-KEY* are not in place here because, unlike *JSON-IDENTIFIER-NAME-TO-LISP*, the function does not translate between JSON and Lisp conventions. Further, -SYMBOLIZE- is a very imperative form, and imperatives should, in my humble opinion, be limited to functions with side effects.
What do you think?
- B. Sm.