sub foo { # original foo.pl code here return "all right"; } foo() unless defined caller(); # call foo() unless require'd