On Wed, 13 Jul 2005, Juerd wrote:

> Dave Whipp skribis 2005-07-13  8:44 (-0700):
> > >  Within a method or submethod, C<.method> only works when C<$_ =:=
> > > $?SELF>.
> > >C<.method> is perfectly legal on *any* topic anywhere that $?SELF
> > >doesn't exist.
> > Just to be clear, this includes any method/submethod with an explicitly
> > named invocant, I hope.
>
> No, $?SELF exists in every method. It's not the *default* invocant
> variable, it's the *always there* invocant variable. There is no default
> variable anywhere in the language that isn't $_.

Actually I took his question to be:

If I explicitly name my invocant in the method signature, does that give
the compiler enough assurance that I'm not going to use .method to mean
$?SELF.method, and it will allow me to safely use .method as $_.method in
for and given?

~ John Williams


Reply via email to