When Ruby raises an exception, it leaves you a backtrace to help you figure out where did the exception originated in. Bindex gives you the bindings as well. This can help you introspect the state of the Ruby program when at the point the exception occurred.