my $p = &test !* &test; my $q = $p !* &test; # outputs $p = &test !* &test test say $p('$p = &test !* &test'); #should be $p !* test test test (?), but says $p !* test test say $q('$p !* &test');