Meador Inge wrote:
>> If 'barf' does not thrown an exception,
>> but merely prints an error message of some kind, then the refactoring
>> changes the behavior (which technically, makes it *not* a refactoring).
> Not only printing, anything that causes a side-effect.

It's not about the side-effect at all (I think) it's about not exiting
the overall scope. I should stop posting in the wee hours.

This might be a correction, but it's 1:30am, so I can't be too sure.

  begin
    foo
  rescue Exception => e
    handler
  end
  begin
    bar
  rescue Exception => e
    handler
  end

Becomes:

  begin
    foo
    bar
  rescue Exception => e
    handler
  end

ONLY IF handler doesn't return or does throw an exception.

Does that hold? I'd like to get an actual re-factoring out of this :)

Oh, by the way,
Jim said:
> Actually, I find it very interesting ... but then, you have to
> consider my tastes.  :)

You're tastes are indeed strange, Jim!

Cheers,
Dave