Why does Hashable require Equatable?

and every other data structure in every language using Hashable equivalents

Equatable documentation says that "Equality implies substitutability—any two instances that compare equally can be used interchangeably in any code that depends on their values".
User should expect that values that aren't equal aren't substituable, i.e. are different keys.
You should treat hash as a tool to speed things up.

2 Likes