1use strict; 2use warnings; 3 4package Over; 5 6use overload '""' => \&val, '0+' => \&val, fallback => 1; 7 8sub new 9{ 10 my $pkg = shift; 11 my $val = shift; 12 13 return bless \$val, $pkg; 14} 15 16sub val 17{ 18 my $self = shift; 19 return $$self; 20} 21 221; 23