use strict; use warnings; package MyModule; use overload q{""} => q{printObject}; sub new { ... } ... sub printObject { # print your attributes here } package main; my $obj = MyModule->new(some => q{args}); ... print qq{$obj}; ...