Ok, "rescue Exception" gives the behavior I was looking for from "rescue". That's easy enough. Mark (scurrying off to fix eval.rb ... :-) Dave Thomas wrote: ... > It still raises the exception, it's just that the hierarchy changed > somewhat, so that ScriptError is now longer a subclass of > StandardError. > > begin > eval "grumpy old code" > rescue > puts "not here" > rescue ScriptError => e > puts "but here: #{e}" > end > > => > > but here: (eval):1: undefined local variable or method `code' for #<Object:0x40197d30> > > Regards > > Dave