News for hackers. Stuff that matters.
Re:How To Write an Equality Method in Java by stcredzero on Tuesday June 09, 2009 @04:16PM (#649889)
Maybe languages should have special interfaces for things that can be dictionary keys? That way, when someone implements that interface, you are certifying that the object is suitable for being a key.
Re:How To Write an Equality Method in Java by pmjordan on Tuesday June 09, 2009 @07:13PM (#650190)
C++'s std::[unordered_]{map|multimap|set|multiset} containers all make const copies of keys. Of course, this being C++ you can wiggle out of this requirement (e.g. using the mutable keyword) but you have to be pretty insistant about it.

On the other hand, C++ containers have all sorts of other problems (iterator invalidation to name one)...

C# has the value type concept, but I don't think it's enforced on container keys.