use strict; use warnings; sub test1 {print "Hello\n"; return 0;} sub test1remainder {print "Bye\n";return 1;} sub test2 {print "\tHello2\n"; return 0;} sub test2remainder {print "\tBye2\n";return 1;} sub test3 {print "\t\tHello3\n"; return 1;} sub test3remainder {print "\t\tBye3\n";return 1;} unless(0) { if (test1) { test1remainder and exit 0}; if (test2) { test2remainder and exit 0}; if (test3) { test3remainder and exit 0}; } __DATA__ C:\test>perl or.pl Hello Hello2 Hello3 Bye3