use Scalar::Util qw/dualvar/; my $x = dualvar 42, 'the answer'; print "\$x contains $x\n"; # prints "$x contains the answer" printf "\$x contains %d\n", $x; # prints "$x contains 42"