[cgiapp] ($self vs $c) was: Re: New Plugin: RunmodeDeclare
George Hartzell
hartzell at alerce.com
Sun Sep 28 21:24:06 EDT 2008
Mark Stosberg writes:
> On Mon, 29 Sep 2008 00:18:02 +0100
> Richard Jones <ra.jones at dpw.clara.co.uk> wrote:
>
> > Mark Stosberg wrote:
> > > As Rhesa proposed, he has followed through and released a plugin to add the
> > > Devel::Declare / Method::Signatures magic to CGI::Application:
> > >
> > > http://search.cpan.org/perldoc?CGI::Application::Plugin::RunmodeDeclare
> >
> > Looks like an interesting alternative to CAP::AutoRunmode. One minor
> > irritant is having to put 'runmode foo ($c:)' everywhere (only if using
> > $c instead of $self of course). Might be useful to be able to declare
> > use CGI::Application::Plugin::RunmodeDeclare(invocant => '$c'), or just
> > use CAP::RunmodeDeclare qw($c).
>
> I agree with this sentiment.
>
> This brings back to life the discussion we were having on IRC the other
> day about "$self" vs "$c".
>
> I like "$c" because it's shorter and since it's used all over the code
> base, it's clear enough what it is. And, the first element to 'shift'
> off of @_ in a method must be the invocant.
>
> Michael Peters and Richardo argued in favor of "$self" citing the
> "Principle of Least Surprise" and the expectation that this non-standard
> change would generate more harm in confusion than benefits in
> keystrokes.
>
> Although I still prefer "$c" in my own code, I thought they made good
> points, so I switched back from "$c" to "$self" in the docs and code of
> the latest CGI::App dev release.
>
> But I'm interested in more opinions on the issue. Richard, do you
> particularlly prefer "$c", or were you mostly following along the docs
> that were updated to switch from "$self" to "$c" ?
I'll toss in one vote for $self being much less Surprising, both to me
and to folks with whom I'm sharing code.
g.
More information about the cgiapp
mailing list