my ($name, $address, $other, $info, $here) = getinfo(); ... sub routine_A { ... print $name; } ... #### my @vars; sub routine_A { ... if (!@vars) { @vars = getinfo() } my $name = $vars[0]; print $name; } sub routine_B { ... if (!@vars) { @vars = getinfo() } my $address = $vars[1]; print $address; }