-
Notifications
You must be signed in to change notification settings - Fork 0
M4 The object model #23
Copy link
Copy link
Open
Labels
area/objectsThe object model, types, slots and the builtin typesThe object model, types, slots and the builtin typeskind/milestoneA milestone checklist, tracking the issues that close itA milestone checklist, tracking the issues that close itpriority/p1Needed for the current milestone but not blocking todayNeeded for the current milestone but not blocking today
Milestone
Description
Metadata
Metadata
Assignees
Labels
area/objectsThe object model, types, slots and the builtin typesThe object model, types, slots and the builtin typeskind/milestoneA milestone checklist, tracking the issues that close itA milestone checklist, tracking the issues that close itpriority/p1Needed for the current milestone but not blocking todayNeeded for the current milestone but not blocking today
Roughly ten weeks and fourteen lessons, which makes it the largest content milestone in the project. It is also where the specification stops being a description and starts being something you could implement from, because the object model is where a reimplementation either matches CPython or quietly does not.
Exit criterion.
BP-DICTspecifies the probe sequence, the growth policy and compaction precisely enough that an independent implementation reproduces CPython's exactdk_indicesarray for a given sequence of insertions and deletions, verified by test. The coverage ledger shows everyPyTypeObjectslot owned by a blueprint.Content
Blueprints
BP-OBJECTthroughBP-FINALIZE, twelve of themTooling
DictLabandSpecializationHeatwidgetsbpcworking across all three build configurations, which is Q5: can bpc extract struct layouts across all three build configurations #5Gates
bpccan extract struct layouts reliably, and the DWARF fallback if header parsing is not good enough