
This package provides memoization functions. `memoize' accepts a symbol or a function. When given a symbol, the symbol's function definition is memoized and installed overtop of the original function definition. When given a function, it returns a memoized version of that function.
Memoization takes up memory, which should be freed at some point. Because of this, all memoization has a timeout from when the last access was.