package Number; use overload [snipped] '""' => sub { ...; }; #### ### example package package Number; my $self = {}; sub new { my $class = shift(); $self->{decimal} = shift(); return bless( $self, $class ); } my @roman_numbers = qw[ undef I II III IV V VI VII VIII IX X ]; use overload '""' => sub { return $roman_numbers[ $self->{decimal} ] }; 1; ### main package main; my $instance = new Number(3); print $instance; ### it will print 'III'