Add memoize_on_first_arg