in reply to Constructors Without ->new()

Very nice, I like it.

Also, since you don't use $filename and $line, you might as well call caller in scalar context:

my $package = caller;

But that's just a very minor nitpick. :)