in reply to Re: Re: Shift versus Sanity
in thread Shift versus Sanity

sub do_stuff { my $this = shift; my $session = shift || die "Missing req'd Session argument"; my $cgi = shift || new CGI (); ... }

As said, I think that's horrible.

sub do_stuff { my ($self, $session, $cgi) = @_; croak 'Session not optional' unless $session; $cgi ||= CGI->new(); ... }
I call my objects $self, not $this. You can see the three arguments in a single line, instead of spread over three.

esthetics aside, here are some hard figures on efficiency (slightly reformatted)

I am starting to think that you didn't read my post, and are only commenting on the piece of code. Efficiency is important, but not more important than readability and maintainability. Whenever efficiency is important, you probably should not be using OO.

- Yes, I reinvent wheels.
- Spam: Visit eurotraQ.