Maybe physical identity is too strong of a requirement for equality. So
another way to think about it is that it's 'hash-set', 'set', and '#{}'
that are--you know--"broken", but that there's a fix, which is to always
use 'sorted-set'. (I'm assuming that calling 'seq' on any two sorted sets
that are = always returns seqs that are =.)
(Don't take offense at the tone of my remarks. I think we're all on the
same side here.)
On Saturday, February 8, 2014 10:14:37 PM UTC-6, Mars0i wrote:
>
> Maybe another way to put it is that what is, uh, "broken" isn't 'map' or
> 'seq', but '=', which is willing to tell you that two things (sets) are the
> same when they're not! We also have the non-broken predicate 'identical?',
> however, that gets it right. It's nice to also have a set-equal predicate,
> which ignores differences in how sets are stored, and ... that's what '='
> is! However, if we interpret '=' as implying that when the same function
> is applied to things that are "equal" in its sense, then we are making a
> mistake: '=' doesn't mean that. According to this reasoning, nothing here
> is broken, even from an extra-linguistic perspective. '=' just shouldn't
> be misunderstood. (In a language with different design and style goals, it
> might been preferable to define "=" to mean what Clojure means by
> 'identical?', and use something else--perhaps "equivalent?"--for a
> predicate analogous to Clojure's '='.)
>
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.