From:	Joel VanderWerf [mailto:vjoel / path.berkeley.edu]
> Joel VanderWerf wrote:
> > Use closures and class scopes:
> > 
> > class Foo
> >   tmp1 = ExpensiveObject.new
> >   tmp2 = ExpensiveObject.new
> 
> Assuming you want to share the tmp1 and tmp2 among all instances of the 
> class, which probably you don't want. Sorry.

No, I very much do - each object is only needed as a 'scratch' pad for performing calculations within the method; before and after the method I don't care about the value. Your idea has interesting merit. I hadn't thought of closing and re-opening the class to 'reset' the closure scope. Or (for that matter) of using define_method to create a method as a closure as both you and David suggested.

Thanks, interesting ideas!