sub sis { my ($self) = @_; # check whether the internal representation is already defined if ( !$self->{_sis} ) { # call the constructor and save the result my ($dbh, $uname) = get_constructor_args_from_somewhere(); $self->{_sis} = Company::Dept->new($dbh, $name); } return $self->{_sis}; }