my ($a, $b); $a = \$b; #my $a='b'; $b = '1'; #my $b='1'; $a = '2'; #$$a='2'; # Wrong, $$a would dereference $a, but you failed to create a proper ref in first place. # that's why 'use strict' complained. Nothing should have printed unless you # defeated 'use strict' in which case perl guesses that you are trying to # make a reference and correctly prints '1'. print $b; # I assume you are experimenting with references?