Just a bug. File an issue in JIRA. Thanks!
David On Sun, Nov 20, 2016 at 10:58 AM, Juan Facorro <[email protected]> wrote: > Hi all, > > (This might have been asked before, but I couldn't find anything through a > search in the group history or google.) > > First of all, Clojure/ClojureScript are awesome! > > I found the result of comparing a map and a record is different based on > the order of the arguments to =: > > To quit, type: :cljs/quit > cljs.user=> (defrecord R []) > cljs.user/R > cljs.user=> (= {} (R.)) > true > cljs.user=> (= (R.) {}) > false > > I tried the code above with tags r1.7.228, r1.8.34 and 1.9.293. > > Is this expected behavior? > > This seems to be rooted in the fact that when a map is the first argument > the function used to make the comparison is the implementation of "equiv" > from the map. But when a record is the first argument the implementation > used is the one from the record, which checks if the types of both > arguments are equal. > > The behavior is Clojure (JVM) is consistent: > > user=> (defrecord R []) > user.R > user=> (= {} (R.)) > true > user=> (= (R.) {}) > false > > I suspect this works consistenly since the implementation of "equiv" in > "clojure.lang.APersistentMap" checks for the marker interface > "MapEquivalence". > > Kind regards, > Juan > > -- > Note that posts from new members are moderated - please be patient with > your first post. > --- > You received this message because you are subscribed to the Google Groups > "ClojureScript" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/clojurescript. > -- Note that posts from new members are moderated - please be patient with your first post. --- You received this message because you are subscribed to the Google Groups "ClojureScript" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/clojurescript.
