package Globject; our %classes; sub new { my $class = shift; # keep it unique my $symbolname = $class . ++$classes{$class}; my $tGlob = \*{$symbolname}; delete $Globject::{$symbolname}; # kill the package global return bless($tGlob, $class); }