use 5.010; sub old { say "$_ " . ($_[0] // '' ) } sub new (_) { say "$_ " . ($_[0] // '' ) } old() for qw/ global /; new() for qw/ global /; local $_ = 'global'; my $_; old() for qw/ lexical /; new() for qw/ lexical /; __END__ global global global global global lexical