Why have memo as a positional argument in some cases and a keyword argument in others?