{ package Foo; use overload '""' => \&as_string; sub as_string { "Foo!" } } $_ = bless {}, 'Foo'; /(.*)/ and print "$1\n"; # does this print "Foo!" or "Foo=HASH(0xdeaded)"?