@@ -4,16 +4,6 @@ Project: core implementation
44Still to do
55-----------
66
7- More performance work -- one particular test, test_descr.inherits(),
8- is still about 50% slower with dynamic classes. :-( The approach of
9- choice would be:
10-
11- Add a list of weak refs to derived classes to each dynamic
12- class, and trap setattr+delattr on the base class so that they
13- update the tp_XXX slot in each derived class when the base class
14- __XXX__ gets set or deleted. More work, but more gain (zero waste
15- in slot_tp_XXX when __XXX__ is not overridden).
16-
177Add __del__ handlers?
188
199Allow assignment to __bases__ and __dict__?
@@ -35,6 +25,17 @@ implemented.
3525Done (mostly)
3626-------------
3727
28+ More performance work -- one particular test, test_descr.inherits(),
29+ is still about 50% slower with dynamic classes. :-( The approach of
30+ choice would be:
31+
32+ Add a list of weak refs to derived classes to each dynamic
33+ class, and trap setattr+delattr on the base class so that they
34+ update the tp_XXX slot in each derived class when the base class
35+ __XXX__ gets set or deleted. More work, but more gain (zero waste
36+ in slot_tp_XXX when __XXX__ is not overridden).
37+ *** That's done now, with great success. ***
38+
3839Make __dynamic__ the default. *** done (but more performance work
3940needs to be done). ***
4041
0 commit comments