Initial version of recursive memoizing macro
Extended macro to functions with more arguments
Using if-let + find instead of contains?
Renamed since the old name didn't fit