-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PEP 646: Be more explicit about grammar changes needed #1880
Conversation
Derp someone's been writing too much LaTeX recently
pep-0646.rst
Outdated
|
||
1. Star expressions must be made valid in index operations, | ||
e.g. ``Tuple[*Ts]`` (but *not* in slice operations in general - e.g. | ||
``Tuple[*Ts:*Ts]`` is nonsensical and should remain invalid). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also clarify that Tuple[x, *y, z]
is supported.
we probably need to clarify that this syntax would be accepted anywhere, with semantics as described in PEP 637 (there are subtle edge cases that were reasoned through for PEP 637).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What kinds of place do you have in mind when you say "accepted anywhere"? Aren't starred expressions still only valid in the context of indexing in PEP 637?
In terms of "subtle edge cases" - I see there are these examples in PEP 637:
obj[*()]
obj[*(x,)]
obj[*(x,),]
Are these the ones you had in mind?
More generally, I'm started to wonder whether it would be better to do a from-scratch implementation of PEP 646 in CPython (rather than basing it on the PEP 637 implementation) ato get a better sense of exactly what would be required. Do you think this would be worth it - would this make a big difference to the SC? Or would it be better to get the SC's early opinion before spending time on implementation?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With my small change I now declare this perfect. I will merge this PR and send the PEP to the SC on your behalf.
Great, thanks Guido! |
Since PEP 637 was rejected.