Generalized hashing of keys for memoization #1074
This approach isn't perfect but it will allow a lot more keys to be memoized than before (sets, lists, dictionaries). The main limitation is that composite values as dictionary keys are not allowed by the JSON spec.
Currently pandas Dataframes/Series and numpy arrays are allowed as mutables. In general you will want to support mutable types explicitly as using the
This PR isn't ready yet - I want to add a bunch of unit tests.
Just some quick examples/performance statistics:
Unsurprisingly, big keys hash slower than small keys (I expect most keys to be pretty small). Note that