From: Ævar Arnfjörð Bjarmason Date: Wed, 06 Oct 2010 22:57:41 GMT Subject: Re: [PATCHv5 03/17] gitweb/lib - Very simple file based cache Message-ID: In-Reply-To: <1286402526-13143-4-git-send-email-jnareb@gmail.com> On Wed, Oct 6, 2010 at 22:01, Jakub Narebski wrote: > +sub new { > +       my ($proto, $p_options_hash_ref) = @_; > + > +       my $class = ref($proto) || $proto; > +       my $self  = {}; > +       $self = bless($self, $class); You use: my $class = ref($proto) || $proto; Throughout the new class definitions. Presumably that's just copy/pasted from some old docs and you don't actually want to support: my $obj = Class->new; my $obj2 = $obj->new; It's better just to: sub new { my ($class, $options) = @_: my $self = bless {}, $class; Unless there's some reason for the ref($proto) that I've missed.