]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
The dynamic performance hack is (mostly) done.
authorGuido van Rossum <guido@python.org>
Fri, 12 Oct 2001 17:43:43 +0000 (17:43 +0000)
committerGuido van Rossum <guido@python.org>
Fri, 12 Oct 2001 17:43:43 +0000 (17:43 +0000)
PLAN.txt

index 01a1183d02b4ad53f089b8b9dad0bcab163adc92..4eb78a7aa4d5d0f307bc6882956b3fd146f95ea4 100644 (file)
--- a/PLAN.txt
+++ b/PLAN.txt
@@ -4,16 +4,6 @@ Project: core implementation
 Still to do
 -----------
 
-More performance work -- one particular test, test_descr.inherits(),
-is still about 50% slower with dynamic classes. :-(  The approach of
-choice would be:
-
-    Add a list of weak refs to derived classes to each dynamic
-    class, and trap setattr+delattr on the base class so that they
-    update the tp_XXX slot in each derived class when the base class
-    __XXX__ gets set or deleted.  More work, but more gain (zero waste
-    in slot_tp_XXX when __XXX__ is not overridden).
-
 Add __del__ handlers?
 
 Allow assignment to __bases__ and __dict__?
@@ -35,6 +25,17 @@ implemented.
 Done (mostly)
 -------------
 
+More performance work -- one particular test, test_descr.inherits(),
+is still about 50% slower with dynamic classes. :-(  The approach of
+choice would be:
+
+    Add a list of weak refs to derived classes to each dynamic
+    class, and trap setattr+delattr on the base class so that they
+    update the tp_XXX slot in each derived class when the base class
+    __XXX__ gets set or deleted.  More work, but more gain (zero waste
+    in slot_tp_XXX when __XXX__ is not overridden).
+*** That's done now, with great success. ***
+
 Make __dynamic__ the default.  *** done (but more performance work
 needs to be done). ***