use strict; use warnings; use overload bool => sub{shift}; use overload qq("") => sub{ my $self = shift; return $self->{name}; }; my $m = bless{name => 'foo'}; my $n = bless{name => 'bar'}; print $m; # foo