I'm catching the exception code that is returned from ruby_exec_node() in order to print out errors. This is necessary in order to produce error information because the implementation does not have console window and allows end-users to add scripts. 'p' and 'print' are handled by message boxes and if ruby_exec_node() returns an error code then the implementation gathers $!.message and $!.backtrace and pops up a message box describing the error. There needs to be a way for the end users to be informed of errors created by their scripts. If I don't create a handler for exit then the end-users won't be able to use 'exit' in their scripts without producing an 'error' message box. The whole thrust of what I'm trying to say is that 'raise' is used to raise an exception and 'exit' is used to exit the script. Presently exit is just another way of raising an exception. This struck me as non-intuitive, so I'm discussing it, that's all. I don't consider explicitly exiting the script to be erroneous behavior. -- Posted via http://www.ruby-forum.com/.