package Dienst; my $dienst; sub new { #... } sub get_Dienst { $dienst=Dienst->new(@_) unless($dienst); return $dienst; } package main; #... sub mach_was { my $dienst=Dienst::get_Dienst(); #... }