my $name; $name = 'red'; *$name = sub { "@_" }; $name = 'blue'; *$name = sub { "@_" }; $name = ''; print red(), "\n"; print blue(), "\n"; __END__ #### my $name; for $name ('red', 'blue') { *$name = sub { "@_" }; }; $name = ''; print red(), "\n"; print blue(), "\n"; __END__ #### # global $name; for $name ('red', 'blue') { *$name = sub { "@_" }; }; $name = ''; print red(), "\n"; print blue(), "\n"; __END__