On Jun 14, 2009, at 03:47 , apeiros wrote:

> In ruby 1.8, instance_eval yielded self, this is no longer the case  
> in ruby 1.9.
> Was this an informed decision or just an oversight (after all it was  
> undocumented in 1.8)?
> If it was an informed decision I'd be interested in the rationale.
> If it was an oversight: could we have it back please?
> It was nice for blocks that didn't care whether they were  
> instance_eval'd or just called/yielded to, as long as they get an  
> argument. With 1.9 those blocks have to be written specifically for  
> instance_eval and use self instead of the argument.

I'd really like to hear someone weigh in on this.

Personally, I hope it was unintentional and can go back. It'd be nice  
if self.instance_eval(&block) and Block#call(self) can be interchanged.