Fork me on GitHub

Genuine question (and not an exercise in snobbery ;p), I wonder if many people's seeming disfavour for ns-qualified keywords comes from lack of (properly setup or understood?) IDE tooling. With cljr-slash ( ), I type ::foo/ and the right :require will be inserted in my ns declaration, and the requiring will be actually performed into the runtime that's an instantaneous op, and after that, tab completions for ::foo/ will be 100% accurate I can imagine that if lacking this tooling, using ns-qualified kws could be more tedious.


Oooh, I hadn’t stumbled on cljr-slash before, thanks for pointing that out!


I can say that for me personally, I found it annoying using the more verbose namespaced keys, until I started to feel the benefits directly. Now I’m the person who’s pushing people toward namespacing keywords everywhere…

😅 4

I don't find auto-completion/hinting to be any obstacle at all to using ns-qualified keywords, to be honest. My set up is Atom/Chlorine with its bare-bones completion (without Compliment). Stu Halloway says he doesn't use auto-complete/hinting at all in his editor setup -- and he seems to use ns-qualified keywords just fine 🙂

👍 4

As I'm converting code at work from to next.jdbc I'm working more and more with (table)-qualified keywords and I like it. I'm even changing some old code that still uses c.j.j to use the :qualifier option to add a table-qualifier to the column keywords 🙂


interesting design, thanks for sharing!


It was this that caused me to update my CFML/Clojure bridge library to support namespace-qualified keys in hash maps for interop, BTW 🙂