Lucas Lemmens wrote: > Dear pythonians, > > I've been reading/thinking about the famous function call speedup > trick where you use a function in the local context to represent > a "remoter" function to speed up the 'function lookup'. > > "This is especially usefull in a loop where you call the function a > zillion time" they say. > > I think this is very odd behavior. > > Why isn't the result of the first function-lookup cached so that following > function calls don't need to do the function-lookup at all? > I guess because the function name may be re-bound between loop iterations. Are there good applications of this? I don't know.
> And if the context changes (an import-statement say) reset the > cached 'function-lookups'. In general an object doesn't know what names are bound to it and there are many ways besides an import statement of binding/re-binding, so "if the context changes" is easier said than done. > > This way any function would only need to be looked up once. > > L. > Would you apply this optimization to all lookups in outer scopes, or just callables? Why? ;-) Michael -- http://mail.python.org/mailman/listinfo/python-list