On Mon, Dec 11, 2017 at 6:21 PM, Franklin? Lee
<[email protected]> wrote:
> What about hanging onto just the value, and creating new StopIteration
> instances instead of raising the same one again?

Doesn't really matter, as we're still prolonging the lifespan of the
returned object.

To me the current behaviour of generators seems fine.  For regular
generator users this is a non-problem.  For trampolines and async
frameworks--so many of them have been implemented and all of them
worked around this issue in one way or another.

> I would have attached the returned value to the generator object, but
> for some reason, generator and coroutine objects can't take
> attributes. Maybe I should ask for that feature instead.

You can use a WeakKeyDictionary to associate any state with a
generator; that should solve your problem.  We wouldn't want to add
__dict__ to generators to have another way of doing that.

Yury
_______________________________________________
Python-ideas mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to