This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-04-08
Channels
- # admin-announcements (7)
- # aws (5)
- # beginners (37)
- # boot (39)
- # cider (4)
- # clara (2)
- # cljs-dev (32)
- # cljsjs (1)
- # cljsrn (12)
- # clojure (235)
- # clojure-austin (3)
- # clojure-belgium (7)
- # clojure-berlin (11)
- # clojure-dev (36)
- # clojure-france (10)
- # clojure-japan (10)
- # clojure-poland (2)
- # clojure-russia (39)
- # clojure-uk (4)
- # clojurescript (81)
- # code-reviews (9)
- # core-async (6)
- # core-logic (1)
- # datomic (32)
- # editors (7)
- # emacs (1)
- # hoplon (191)
- # jobs-discuss (14)
- # juxt (4)
- # lein-figwheel (4)
- # leiningen (3)
- # off-topic (7)
- # om (49)
- # onyx (34)
- # other-lisps (1)
- # overtone (11)
- # parinfer (1)
- # proton (5)
- # re-frame (11)
- # reagent (12)
- # spacemacs (2)
- # untangled (90)
- # yada (15)
bronsa: we're talking about your proposal, will update on the ticket. re "2- no please. that would make the proposed syntax useless for e.g. Datomic schemas, for which I think this would be a good fit to reduce noise" I don't get what you're saying there at all and I suspect I just didn't communicate the question well
ok, good :)
thought you were asking whether we should only support auto-resolving to existing namespaces
no, just the fallback behavior that auto-resolved keywords support (which I think is weird for keywords actually)
@alexmiller: I'm not understanding -- are you talking of e.g. ::clojure.core/foo
?
yeah, I totally don't get the point of that
have you ever seen that used? I can't say I have
but I'd say it's ok as is, as a matter of consistency. the way I see it, aliases are a superset of the alias targets
so if (alias 'c.c 'clojure.core) ::c.c/foo
works, I'd expect the mechanical un-aliased form ::clojure.core/foo
to work aswell
rich asked if in your proposal there is any way to autoresolve keys to the current namespace (since you removed #::) ?
so you just wouldn't use #: at all then
we think it will be common for maps to have a mixture of current ns and some other ns which doesn't play as well this way
how would that work in your proposal? #:foo {:bar 1 ::baz 2}
-> {:foo/bar 1 :user/baz 2}
?
although I guess that's again, only true for clojure and not EDN, given the lack of pre-existing auto-resolving syntax macros, namely ::
and "`" in EDN
I think it's definitely a subtle part of Clojure where the "namespace part of a symbol" does and does not relate to "namespaces" (or "libs" as much of the Clojure docs calls them).
@alexmiller: your last point is to say being able to #:foo {:a 1 :b 2}
-> #:bar {:a 1 :b 2}
?
no to say you can go from {:a 1 :b 2}
to #:foo{:a 1 :b 2}
without changing all the keys
or to #::
or whatever
@alexmiller: what about #:foo{'bar 1}
returning different results than '#:foo{bar 1}
? that by design or an accident of the current impl?