[Python-Dev] Obtaining stack-frames from co-routine objects
Nick Coghlan
ncoghlan at gmail.com
Sat Jun 13 18:21:55 CEST 2015
More information about the Python-Dev mailing list
Sat Jun 13 18:21:55 CEST 2015
- Previous message (by thread): [Python-Dev] Obtaining stack-frames from co-routine objects
- Next message (by thread): [Python-Dev] Obtaining stack-frames from co-routine objects
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 13 June 2015 at 20:25, Ben Leslie <benno at benno.id.au> wrote: > Is there any reason an f_stack attribute is not exposed for frames? Many of the > other PyFrameObject values are exposed. I'm guessing that there probably > aren't too many places where you can get hold of a frame that doesn't have an > empty stack in normal operation, so it probably isn't necessary. There's also the fact that anything we do in CPython that assumes a value stack based interpreter implementation might not work on other Python implementations, so we generally try to keep that level of detail hidden. > Anyway, I'm not suggesting that adding f_stack is better than explicitly > adding pointers, but it does seem a more general thing that can be exposed > and enable this use case without requiring extra book-keeping data structures. Emulating CPython frames on other implementations is already hard enough, without exposing the value stack directly. Compared to "emulate CPython's value stack", "keep track of delegation to subiterators and subcoroutines" is a far more reasonable request to make of developers of other implementations. >From a learnability perspective, there's also nothing about an "f_stack" attribute that says "you can use this to find out where a generator or coroutine has delegated control", while attributes like "gi_delegate" or "cr_delegate" would be more self-explanatory. Cheers, Nick. -- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
- Previous message (by thread): [Python-Dev] Obtaining stack-frames from co-routine objects
- Next message (by thread): [Python-Dev] Obtaining stack-frames from co-routine objects
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list