Greg, On 2015-04-29 6:46 PM, Greg Ewing wrote: > Yury Selivanov wrote: > >>> Won't that prevent some existing generator-based >>> coroutines (ones not decorated with @coroutine) >>> from calling ones implemented with 'async def'? >>> >> It would. But that's not a backwards compatibility >> issue. > > It seems to go against Guido's desire for the new > way to be a 100% drop-in replacement for the old > way. There are various ways that old code can end > up calling new code -- subclassing, callbacks, > etc. > > It also means that if person A writes a library > in the new style, then person B can't make use > of it without upgrading all of their code to the > new style as well. The new style will thus be > "infectious" in a sense. > > I suppose it's up to Guido to decide whether it's > a good or bad infection. But the same kind of > reasoning seemed to be at least partly behind > the rejection of PEP 3152. > It's a drop-in replacement ;) If you run your existing code - it will 100% work just fine. There is a probability that *when* you start applying new syntax something could go wrong -- you're right here. I'm updating the PEP to explain this clearly, and let's see what Guido thinks about that. My opinion is that this is a solvable problem with a clear guidelines on how to transition existing code to the new style. Thanks, Yury
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4