This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-04-26
Channels
- # admin-announcements (4)
- # beginners (3)
- # boot (78)
- # cider (13)
- # cljs-dev (29)
- # cljs-edn (8)
- # cljsjs (11)
- # cljsrn (15)
- # clojure (81)
- # clojure-beijing (2)
- # clojure-belgium (3)
- # clojure-canada (1)
- # clojure-dusseldorf (8)
- # clojure-greece (6)
- # clojure-russia (40)
- # clojure-sg (1)
- # clojure-uk (59)
- # clojurebridge (1)
- # clojurescript (101)
- # core-logic (1)
- # cursive (3)
- # data-science (1)
- # datomic (60)
- # emacs (4)
- # error-message-catalog (12)
- # funcool (1)
- # hoplon (60)
- # jobs (1)
- # jobs-discuss (40)
- # leiningen (5)
- # liberator (1)
- # mount (22)
- # off-topic (8)
- # om (16)
- # onyx (53)
- # re-frame (11)
- # reagent (2)
- # specter (4)
- # testing (18)
- # untangled (51)
@mfikes: Hey Mike, just saw your comment on the pr-str ticket and looking into this. Do you know why the maps are out of order?
@r0man: I suspect, for small maps, the difference is due to the use of different readers.
ok,thanks. since there are only 2 different combinations how they could be printed I'll do the same as you did and use a set
possible bug: cljs.core/Var
implements IEquiv
but not IHash
, so that equivalent vars compare equal but have different hashes — (= #’foo #’foo)
but (not= (hash #’foo) (hash #’foo))
but maybe I’m missing a subtle reason two vars with the same symbol shouldn’t hash equal
@cvermilion: there’s no way to really guarantee that Vars will be the same thing
hmm, interesting
gotcha
I ran into this debugging recursive schemas in schema.core
and this issue means that you get funny results if you define (s/recursive #’SomeSchema)
twice
since the resulting schemas compare but don’t hash equal, and schema
does some caching where it uses the schemas as keys
no worries, just wanted to let you know where it came up
ok, cool, I wanted to check that before filing a report; feels like the solution is finding a better way to do recursive schemas in Schema
ok, I can write that up if you think it would make sense
since vars are mapped to symbols and are compile time only hashing the symbol is probably good enough
right, that would match how IEquiv
works
two vars compare equal if the symbols are the same
ok, patch welcome. @cvermilion did you submit your CA?
I don’t think so, I’ll make sure I do first