clojure-emacs / parseedn

EDN parser for Emacs Lisp
58 stars 14 forks source link

Add support for namespaced maps #17

Closed iarenaza closed 9 months ago

iarenaza commented 10 months ago

parseclj already added support for namespaced maps in 2018 (in commit b40670a56147214f0486763529897cb688a09692).

As Alex Miller said in https://github.com/edn-format/edn/issues/78

Clojure introduced namespace map syntax in Clojure 1.9. The Clojure edn reader was also updated to support the non-autoresolved parts of namespace map syntax

The edn spec should be updated to a new version that includes the namespace map syntax such as #:foo{:bar 1} (syntax alternative for {:foo/bar 1}).

So it's pretty clear that the intention is for edn spec to support namespaced maps (the reference implementation in Clojure already does!).

In addition to the use case mentioned in issue #16, not supporting this seems to cause trouble in CIDER when integrating with shadow-cljs (https://github.com/clojure-emacs/cider/issues/3437

Fixes: #16