Perl has a very handy construction { local $var = 2; ... } This construction is *approximately* equivalent to { my $oldvar = $var; $var = 2; ... $var = $oldvar; }