[Python-Dev] Consolidate stateful runtime globals (original) (raw)

Antoine Pitrou solipsis at pitrou.net
Wed Sep 6 13:08:01 EDT 2017


On Wed, 06 Sep 2017 09:42:29 -0700 Benjamin Peterson <benjamin at python.org> wrote:

On Wed, Sep 6, 2017, at 03:14, Antoine Pitrou wrote: > > Hello, > > I'm a bit concerned about > https://github.com/python/cpython/commit/76d5abc8684bac4f2fc7cccfe2cd940923357351 > > My main gripe is that makes writing C code more tedious. Simple C > global variables such as "onceregistry" are now spelled > "PyRuntime.warnings.onceregistry". The most egregious example seems > to be "PyRuntime.ceval.gil.locked" (used to be simply "gillocked"). > > Granted, C is more verbose than Python, but it doesn't have to become > that verbose. I don't know about you, but when code becomes annoying > to type, I tend to try and take shortcuts.

How often are you actually typing the names of runtime globals, though?

Not very often, but if I want to experiment with some low-level implementation details, it is nice to avoid the hassle.

There's also a readability argument: with very long names, expressions can become less easy to parse.

If you are using a globals, perhaps the typing time will allow you to fully consider the gravity of the situation.

Right, I needed to be reminded of how perilous the use of C globals is. Perhaps I should contact the PSRT the next time I contemplate using a C global.

Regards

Antoine.



More information about the Python-Dev mailing list