In mid July 2008 Memoization was added to Rails core. A demonstration of the usage is here.
I have not been able to find any good examples on when methods should be
When a method fetches data from multiple tables, and perform some calculations before returning the resulting object, and this method is multiple times in requests, memoization might make sense.
Remember that query caching is also active, so only memoize methods which perform in-Ruby calculations, not pure database fetches.