strict refs This generates a runtime error if you use symbolic references (see perlref). ... There is one exception to this rule: $bar = \&{'foo'}; &$bar; is allowed so that goto &$AUTOLOAD would not break under stricture. #### >perl -Mstrict -e "sub walk {} sub run {} my $walkable = defined(&{'walk'}); my $runnable = &{'run'};" Can't use string ("run") as a subroutine ref while "strict refs" in use at -e line 1.