From: Tim Bates Date: 2002-12-18T18:59:21+09:00 Subject: $SAFE block? Once $SAFE is set to a certain level, it's not possible to lower it again. As far as I know, the only way to execute some code at a high $SAFE level and then return to a lower one is like this: thread = Thread.new { $SAFE = 4 # .. do code } thread.join Which is messy to say the least. Why not have something like: Kernel#safe(anInteger) { block } Or even: Kernel#eval_safe(aString, anInteger) Although this could probably be written in terms of the first one. Is there something like this already? If not, why not? Tim Bates -- tim@bates.id.au