in reply to On Perl Objects!

What do you expect

$class=$_;
to do? Where is $_ getting set?

I think you mean to write

my $class = shift;
since the package name (e.g., "ABC") get passed as the first argument when you write
ABC->new();