package SingletonObject; { my $instance; sub instance { unless (defined $instance) { $instance = bless ({}, $class); # other initialization stuff } return $instance; } }