|
|
|
|
|
by kilink
3596 days ago
|
|
I'm not sure if you are asking about Python, or Ruby. Anyway, both languages use value-based hashing for dictionaries. I am not a Rubyist, but I guess you are just expected to not mutate the keys? Ruby's dictionary implementation also has a rehash method to deal with this case [1], if for some reason you are purposely mutating the keys I suppose... [1] http://docs.ruby-lang.org/en/2.0.0/Hash.html#method-i-rehash |
|
Ruby, since you said it allows mutable keys in dictionaries.
> Anyway, both languages use value-based hashing for dictionaries.
Neither Python nor Ruby has compound values. Object identities are primitive values.
> but I guess you are just expected to not mutate the keys?
I guess C programmers are expected not to use memory after they free it.