On Thu, Jul 21, 2005 at 11:58:41AM -0300, Adriano Ferreira wrote: : Larry said: : > So I guess I agree that .tailcall is probably just a bad synonym for "return". : : But is there any other case where we need an explicit tail call with "goto"?
I suppose that depends on whether the tail-call optimization is general enough to work indirectly at run time. : And about a way to curry a method with its receiver to a sub, is there : a shorthand? $sub = &ThatClass::meth.assuming($obj); is the shortest thing that specifies the other class. $sub = &meth.assuming($obj); should work if the method would be selected by MMD. I'd think a lot of these cases are actually covered by currying the class to have an implicit invocant, turning it into a module. Other than that, there's always something like: $sub = -> [EMAIL PROTECTED] { $obj.meth(@args) }; which presumably can optimize the tailcall away. Possibly $sub = { $obj.meth(@_) }; could be forced to recognize that @_ is the slurpy arg to the closure. Larry