use strict; use warnings; use overload "==" => sub{ my $lv = shift; # blessed my $rv = shift; # plain text $$lv eq $rv; }; my $name = do{ my $s = "Fix"; bless \$s; }; print $name == "Fax";