PEP 560
E935160
PEP 560 is a Python Enhancement Proposal that optimizes and refines the implementation of typing and generic types in Python, improving performance and simplifying the internal mechanics of the typing module.
All labels observed (1)
| Label | Occurrences |
|---|---|
| PEP 560 canonical | 1 |
Statements (46)
| Predicate | Object |
|---|---|
| instanceOf | Python Enhancement Proposal ⓘ |
| affects |
how typing module constructs parameterized types
ⓘ
internal representation of typing generics ⓘ |
| affectsModule | typing ⓘ |
| aimsTo |
improve performance of typing operations
ⓘ
simplify internal mechanics of typing module ⓘ |
| author | Ivan Levkivskyi NERFINISHED ⓘ |
| backwardsCompatibility | largely backwards compatible at the public API level ⓘ |
| category | Typing NERFINISHED ⓘ |
| changes | how subscripting of generic classes is implemented ⓘ |
| clarifies |
interaction between generics and metaclasses
ⓘ
semantics of generic aliases ⓘ |
| createdForVersion | Python 3.7 NERFINISHED ⓘ |
| defines | __class_getitem__ protocol ⓘ |
| discusses |
backwards compatibility for typing generics
ⓘ
impact on runtime introspection of typing constructs ⓘ impact on static type checkers ⓘ migration path for third-party typing libraries ⓘ |
| enables |
more efficient implementation of typing module
ⓘ
third-party libraries to hook into generic type machinery ⓘ |
| focusesOn |
core support for typing module
ⓘ
generic types ⓘ |
| hasNumber | 560 ⓘ |
| hasTitle | Core support for typing module and generic types NERFINISHED ⓘ |
| implementedIn | CPython 3.7 NERFINISHED ⓘ |
| improves |
import-time performance of typing-heavy code
ⓘ
performance of generic type parameter substitution ⓘ performance of isinstance checks involving typing generics ⓘ performance of issubclass checks involving typing generics ⓘ |
| introduces | new C-level protocol for generic types ⓘ |
| language | Python NERFINISHED ⓘ |
| modifies |
implementation of typing.AbstractGenericAlias (internal)
ⓘ
implementation of typing.Generic ⓘ |
| motivation |
need for better support of generic types in CPython core
ⓘ
typing module was slow and complex internally ⓘ |
| reduces |
overhead of generic alias creation
ⓘ
overhead of runtime type checks in typing module ⓘ |
| relatedTo |
PEP 484
NERFINISHED
ⓘ
PEP 544 NERFINISHED ⓘ PEP 585 NERFINISHED ⓘ |
| replaces | pure-Python generic type machinery with optimized core support ⓘ |
| repository | https://peps.python.org/pep-0560/ ⓘ |
| standardizes | low-level API for generic types ⓘ |
| status | Final ⓘ |
| targetImplementation | CPython NERFINISHED ⓘ |
| type | Standards Track ⓘ |
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.
Instruction
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.
Input
Subject: PEP 560 Description of subject: PEP 560 is a Python Enhancement Proposal that optimizes and refines the implementation of typing and generic types in Python, improving performance and simplifying the internal mechanics of the typing module.
Referenced by (1)
Full triples — surface form annotated when it differs from this entity's canonical label.