The problem is you're unnecessarily conflating the value by which to
base a sort (x and y in your example) with the elements of the set.
Equality and ordinality are not the same thing.  It should be
perfectly reasonable to hand someone a set of unique objects sorted by
some non-unique attribute of the elements of the set.

On Apr 16, 10:13 am, Per Vognsen <per.vogn...@gmail.com> wrote:
> On Sat, Apr 17, 2010 at 12:01 AM, Sean Devlin <francoisdev...@gmail.com> 
> wrote:
> > I know you might not like it, but there is a convention in JavaLand
> > that a comparator value of 0 is identical in a sorted collection.
>
> It's not a Java convention. It's intrinsic to the business of sorting.
> For sorting to give well-defined results, it must be based on an
> ordering that respects the trichotomy law, which says that, for all x
> and y, exactly one of the following three conditions must hold: x < y,
> x = y, x > y. If you define the < and > based on a custom comparator
> but use the default equality implementation for the = then you cannot
> expect this to hold. Packaging all three relations together lets the
> implementor of the comparator guarantee trichotomy.
>
> -Per
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group 
> athttp://groups.google.com/group/clojure?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to