On 04/28/2018 10:16 AM, Tim Peters wrote:
... but do realize that since PEP 572 dropped any notion of sublocal scopes, that recurring issue remains wholly unaddressed regardless.
If we need a sublocal scope, I think the most Pythonic* route to have it would be: with sublocal(): blah blah which would act just like local/global does now: - any assignment creates a new variable - unless that variable has been declared global/nonlocal - plain reads (no assignment ever happens) refer to nonlocal/global/built-in names This has the advantages of: - no confusion about which variables are sublocal (acts like a new function scope) - no extra parens, assignments, expressions on "with sublocal():" line Possible enhancements: - give sublocal block a name "with sublocal() as blahblah:" and then reuse that block again later ("with blahblah:") or maybe pass it to other functions... Of course, as previously stated, this is orthogonal to PEP 572. -- ~Ethan~ _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/