1 `Memoizing' a function makes it faster by trading space for time. It
2 does this by caching the return values of the function in a table.
3 If you call the function again with the same arguments, C<memoize>
4 jmups in and gives you the value out of the table, instead of letting
5 the function compute the value all over again.