sub new { my $class_or_objref = shift; my $ref_class = ref $class_or_objref; # true if an object reference my $object_reference; if ($ref_class) { # build object reference from existing object attributes # and supplied @_ arguments. } else { # build object reference for class from supplied @_ arguments. } return $object_reference; }