Phil Hagelberg <p...@hagelb.org> writes:

> Actually I do consider sets to have keys, since internally they are
> implemented using maps, so the exact same semantics apply for their
> lookup. They're just maps where the key and value are the same thing:

But that implementation is one of convenience, of possibly admirable
laziness, and it's none of our business. A key is something apart from a
value it refers, but in sets, there's no separate value being referred
to. The value is the only thing in play.

Where we get hung up in software is with the flexibility to define
"equality" or "sufficient sameness" in set implementations by taking
only part of the stored values into account. The same idea doesn't exist
in the mathematical view of sets. Our software would be much clearer if
sets didn't tolerate these "key comparison views", and would instead
force one to use a map in cases where such a "key comparison view"
(being something less than the value itself) is necessary.

-- 
Steven E. Harris

-- 
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