Re: [Python-ideas] Revised^4 PEP on yield-from

Raymond Hettinger wrote:
The hasattr() tests can be expensive for repeated throwers and senders. Any merit to caching the result of the test?
The expansion is a specification of the semantics, not an implementation. My current implementation does something like _m = getattr(_i, 'throw', None) if _m: _m(_e) and a further optimisation would be to cache the bound method. -- Greg

[Greg Ewing]
I would have thought that running hasattr() no more than once is a semantic detail. Also, speed is a relevant consideration whenever users have the choice of continuing to do things the old way. If the new syntax is slower for key use cases, why would anyone adopt it? my-two-cents-ly yours, Raymond

[Greg Ewing]
I would have thought that running hasattr() no more than once is a semantic detail. Also, speed is a relevant consideration whenever users have the choice of continuing to do things the old way. If the new syntax is slower for key use cases, why would anyone adopt it? my-two-cents-ly yours, Raymond
participants (2)
-
Greg Ewing
-
Raymond Hettinger