I agree with you (Gavin Kistner). The question is, what could you loose 
if self was always set as it is with class_eval, instance_eval, etc.?
You could still do:
>def create( name )
>  person = Person.new( name )
>  yield person
>  p person
>end
>
>create( :gavin ){ |person|
>  person.age = 32
>  person.grow_older
>}
as all the other things.

For me the question is: What's the purpose of not always setting self to 
yield context?

Vasco A. Silva

-- 
Posted via http://www.ruby-forum.com/.