$ perl -le' print(exists(&Foo::some_sub)?1:0, defined(&Foo::some_sub)?1:0); $x=\&Foo::some_sub; print(exists(&Foo::some_sub)?1:0, defined(&Foo::some_sub)?1:0); eval "sub Foo::some_sub { print \"foo\" }"; print(exists(&Foo::some_sub)?1:0, defined(&Foo::some_sub)?1:0); $x->(); ' 00 10 11 foo