Damian Conway <damian@cs.monash.edu.au> writes:
> Errr. I would imagine that $ME contains:
>
> * a reference to the object, within an object method
>
> * the name of the class, within a class method
>
> * a reference to the *subroutine* itself, within a non-method.
Ooh, recursive anonymous subroutines 'r' us:
sub factorial {
sub {return $_[1] if $_[0] <= 0;
$_[1] *= $_[0]--;
goto &$ME}->($_[0], 1);
}
I wonder if this counts as a Good Thing.
--
Piers