On 6/21/05, Adam Kennedy <[EMAIL PROTECTED]> wrote: > You are of course assuming that every use of AUTOLOAD, for all time, > will result in > > a) Calling another function > b) An error > > Wouldn't this lead to hacks where people do things like this just to > prevent perl thinking it's a failure? > > sub AUTOLOAD ($whatever) { # but no [EMAIL PROTECTED] > my $s = get_subref_for $whatever; > our &::($whatever) := $s; > return sub () { 1 }; > } > > The ability to get complete control over the params and context of the > function, and maybe run something else AFTER the function call is important.
I think people are being pretty closed-minded about closures. If it comes down to it, you can always get your good old Perl 5 AUTOLOAD like this: sub AUTOLOAD ($whatever) { sub ([EMAIL PROTECTED]) { ... } } Luke