Return::MultiLevel provides a way to return immediately from a deeply nested call stack. This is similar to exceptions, but exceptions don't stop automatically at a target frame (and they can be caught by intermediate stack frames). In other words, this is more like setjmp(3)/longjmp(3) than die. WWW: http://search.cpan.org/dist/Return-MultiLevel/