Recently[1] a predicate for structural equality was requested that also recurses through hash tables. It showed that Emacs doesn't even come with a way of comparing hash tables. Third-party implementations exist but if the code quoted in [2] is representative, perhaps it would make sense to add a `hash-table-equal-p` predicate? Even implemented entirely in Lisp it would be an order of magnitude faster (and actually correct). The attached code is not without flaws but provides a rough starting point. (This is not meant as a strong argument for or against adding it in the first place.)