my $w; $w->{main} = MainWindow->new; $w->{other_widgets} = $w->{main}->Label->.... # and then later... &subroutine($w); sub subroutine { my $w = shift; # Do stuff with $w here now like normal $w->{main}->configure( -title => "new title" ); }