PEP 614
E905021
PEP 614 is a Python Enhancement Proposal that relaxes the grammar restrictions on decorator syntax, allowing more flexible and expressive decorator expressions in Python.
All labels observed (1)
| Label | Occurrences |
|---|---|
| PEP 614 canonical | 1 |
How this entity was disambiguated
This entity first appeared as the object of triple T10763897 — resolving that mention is where its identity was fixed. The disambiguator weighed these candidate entities and picked the highlighted one (or “None”, minting a new entity). This is how homonymy is resolved: the same surface form can point to different entities.
Target entity: PEP 614 Context triple: [Python 3.10, implementsPEP, PEP 614]
-
A.
PEP 612
PEP 612 is a Python Enhancement Proposal that introduces support for parameter specification variables to improve typing of higher-order functions and decorators in Python’s type system.
-
B.
PEP 613
PEP 613 is a Python Enhancement Proposal that introduces the `TypeAlias` annotation to clearly declare and distinguish type aliases in Python’s type hinting system.
-
C.
PEP 634
PEP 634 is the Python Enhancement Proposal that formally specifies the semantics of structural pattern matching introduced in Python 3.10.
-
D.
PEP 636
PEP 636 is a Python Enhancement Proposal that serves as a tutorial-style guide to the structural pattern matching feature introduced in Python 3.10.
-
E.
PEP 604
PEP 604 is a Python Enhancement Proposal that introduced the modern, concise syntax for expressing type unions (using the `|` operator) in Python’s type hints.
- F. None of above. chosen
- G. Unsure - the case is ambiguous/there is not enough information to decide.
Target entity: PEP 614 Target entity description: PEP 614 is a Python Enhancement Proposal that relaxes the grammar restrictions on decorator syntax, allowing more flexible and expressive decorator expressions in Python.
-
A.
PEP 612
PEP 612 is a Python Enhancement Proposal that introduces support for parameter specification variables to improve typing of higher-order functions and decorators in Python’s type system.
-
B.
PEP 613
PEP 613 is a Python Enhancement Proposal that introduces the `TypeAlias` annotation to clearly declare and distinguish type aliases in Python’s type hinting system.
-
C.
PEP 634
PEP 634 is the Python Enhancement Proposal that formally specifies the semantics of structural pattern matching introduced in Python 3.10.
-
D.
PEP 636
PEP 636 is a Python Enhancement Proposal that serves as a tutorial-style guide to the structural pattern matching feature introduced in Python 3.10.
-
E.
PEP 604
PEP 604 is a Python Enhancement Proposal that introduced the modern, concise syntax for expressing type unions (using the `|` operator) in Python’s type hints.
- F. None of above. chosen
Statements (48)
| Predicate | Object |
|---|---|
| instanceOf | Python Enhancement Proposal ⓘ |
| affects |
Python grammar specification
NERFINISHED
ⓘ
Python parser ⓘ |
| allows |
decorators using attribute access on arbitrary expressions
ⓘ
decorators using comprehensions when they form valid expressions ⓘ decorators using conditional expressions ⓘ decorators using indexing and slicing ⓘ decorators using subscripting expressions ⓘ |
| author |
Anthony Sottile
NERFINISHED
ⓘ
Brett Cannon NERFINISHED ⓘ Pablo Galindo NERFINISHED ⓘ Serhiy Storchaka NERFINISHED ⓘ Łukasz Langa NERFINISHED ⓘ |
| backwardsCompatibility | fully backwards compatible ⓘ |
| bdflDelegate | Pablo Galindo NERFINISHED ⓘ |
| category | Core Python NERFINISHED ⓘ |
| changes |
allows any valid expression in decorator position
ⓘ
removes special-casing of dotted names and calls in decorator grammar ⓘ |
| createdForVersion | Python 3.9 NERFINISHED ⓘ |
| discussionsTo | python-dev mailing list ⓘ |
| doesNotChange |
meaning of @ symbol in Python
ⓘ
order of decorator evaluation ⓘ runtime semantics of decorators ⓘ |
| governsSyntaxElement |
decorator
GENERATED
ⓘ
decorator_list in function and class definitions GENERATED ⓘ |
| hasTitle | Relaxing Grammar Restrictions On Decorators NERFINISHED ⓘ |
| implementedInVersion | Python 3.9 NERFINISHED ⓘ |
| language | English ⓘ |
| motivation |
allow arbitrary expressions in decorator syntax
ⓘ
remove unnecessary grammar limitations on decorators ⓘ |
| pepNumber | 614 ⓘ |
| proposesChange | relax grammar restrictions on decorator syntax ⓘ |
| rationale |
make decorator syntax more consistent with general expression syntax
ⓘ
simplify the grammar for decorators ⓘ |
| relatedTo |
PEP 617
NERFINISHED
ⓘ
Python 3.9 release ⓘ |
| relatesToConcept |
Python decorators
ⓘ
Python grammar ⓘ syntax restrictions ⓘ |
| relatesToFeature | decorator syntax GENERATED ⓘ |
| repository | Python PEPs repository ⓘ |
| requires | no code changes for existing decorators ⓘ |
| resolution | Accepted for Python 3.9 ⓘ |
| sponsor | Pablo Galindo NERFINISHED ⓘ |
| status | Final ⓘ |
| targetsLanguage | Python NERFINISHED ⓘ |
| type | Standards Track ⓘ |
| url | https://peps.python.org/pep-0614/ ⓘ |
How these facts were elicited
The pipeline generated the facts above by prompting gpt-5.1 with this entity's name + description and the instruction below.
You are a knowledge base construction expert. Given a subject entity and a description of it, return factual statements that you know for the subject as a JSON list of dictionaries(triples), where keys must be "subject", "predicate" and "object". The number of facts may be very high, between 25 to 50 or more, for very popular subjects. For less popular subjects, the number of facts can be very low, like 5 or 10. # Requirements - If you don't know the subject at all, return an empty list. - If the subject is not a named entity, return an empty list. - Include at least one triple where predicate is "instanceOf". - Do not get too wordy. - Separate several objects into multiple triples with one object.
Subject: PEP 614 Description of subject: PEP 614 is a Python Enhancement Proposal that relaxes the grammar restrictions on decorator syntax, allowing more flexible and expressive decorator expressions in Python.
Referenced by (1)
Full triples — surface form annotated when it differs from this entity's canonical label.