renamed to attr_memoizer