[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Object creation discussion (at last!)
- To: Common-Lisp-Object-System@SAIL.STANFORD.EDU
- Subject: Re: Object creation discussion (at last!)
- From: David A. Moon <Moon@STONY-BROOK.SCRC.Symbolics.COM>
- Date: Tue, 21 Apr 87 13:40 EDT
- In-reply-to: <2754940257-775701@Jenner>
Date: Mon, 20 Apr 87 16:10:57 CDT
From: Patrick H Dussud <DUSSUD%Jenner%ti-csl.csnet@RELAY.CS.NET>
I did a census of :before and :after :init methods on our system:
There are 864 flavors,
192 :before :init methods,
336 :after :init methods.
The :after :init methods seem to be more common than :before :init.
Did you come up with a different count?
When I make these counts I try to exclude the window system, because I
don't consider its design representative of how things would be programmed
today. Unless you've redesigned the MIT window system a lot more than we
have, that's probably true of your system as well.
Here are the make-instance methods I found (in my CLOS object creation
proposal these would be initialize-instance methods, and I have translated
the method qualifiers to the terminology of that proposal):
224 methods total
138 unqualified methods
81 :after methods
5 :around methods
I expected the fraction of :after methods to be lower than 36%. I suppose
it would be good to study them and see why so many are being used, but that
would take more time than I wish to spend today. Maybe later.
For completeness, here are the :init counts, but they are mostly window
flavors:
293 methods total
92 :before methods
23 unqualified methods
170 :after methods
8 :around methods
There is the same preponderance of :after methods, but because :init uses
:daemon method combination (thus almost anything that uses an unqualified
method is, in fact, broken) and because of the influence of the window
system, I don't think there is much to be learned from these numbers.