[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Inheritance of Methods
- To: RPG@SAIL.STANFORD.EDU
- Subject: Inheritance of Methods
- From: Sonya E. Keene <skeene@STONY-BROOK.SCRC.Symbolics.COM>
- Date: Thu, 22 Jan 87 11:09 EST
- Cc: common-lisp-object-system@SAIL.STANFORD.EDU
- In-reply-to: The message of 21 Jan 87 23:10 EST from Dick Gabriel <RPG@SAIL.STANFORD.EDU>
Date: 21 Jan 87 2010 PST
From: Dick Gabriel <RPG@SAIL.STANFORD.EDU>
There is now a section in concepts about inheritance of methods. The
description of this inheritance makes most sense for ``classical''
methods; some would argue that those are the only methods for which this
description makes sense. CONCEPTS now does not contain the phrase ``classical
method,'' and this description does not jive with the section ``Method
Selection and Combination.'' Though this might have been a useful way to
conceptualize methods in the old days, I think it is outmoded, and we
plan to delete the subsection of ``Inheritance'' called ``Inheritance of
Note that this section does not contain the phrase "classical method"
The "Inheritance" chapter mostly talks about the inheritance of slots
and DEFCLASS options. But you have to talk about methods here, to some
degree. It would be misleading to say "The :accessor slot-option is
not inherited". That statement alone implies that if a superclass
gives the :accessor option, it has no effect on the subclass. But in
fact, that method is applicable for the subclass. It's important to
state that explicitly.
Also, it's important to mention that a class can have an applicable
method for accessing a slot, but if the class used :allocation :none for
that slot, using the method will result in an error.
The section also notes that the inheritance of methods works the same
way, regardless of whether the method was defined by DEFMETHOD or by one
of the DEFCLASS options.
I would suggest that we rewrite that short "Inheritance of Methods"
section if you want, but not remove it. One suggestions is to rename
it "Inheritance of Accessor Methods" and discuss it from that