use strict; package A; sub new{ bless {},shift; } package B; sub new{ bless [], shift; } package main; my $a = A->new; my $b = B->new; my $c = {}; my $d = []; print "\$a is of type: ", ref($a), "\n"; print "\$b is of type: ", ref($b), "\n"; print "\$c is of type: ", ref($c), "\n"; print "\$d is of type: ", ref($d), "\n"; __OUTPUT__ $a is of type: A $b is of type: B $c is of type: HASH $d is of type: ARRAY