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