It's a pity that you can't implement a function in an object to consider it equal to another object with the same member values.
Maybe we'll see it one day.
For example I would like a Map<array, any> that compare keys by shallow equality, so to behave like multidimensional tables