Re: CLOS question
- From: Rainer Joswig <joswig@xxxxxxxxxxxxxx>
- Date: Mon, 30 Jul 2007 00:09:40 +0200
In article <1185746464.124847.288820@xxxxxxxxxxxxxxxxxxxxxxxxxxx>,
Scott Burson <FSet.SLB@xxxxxxxxx> wrote:
On Jul 29, 2:27 pm, stam...@xxxxxxxx (Rob St. Amant) wrote:
I have what seems like a familiar CLOS question, but a quick Google
search doesn't turn up an answer: I have a method, m, and an after
method for it. The after method is specialized on class c. I'd like
to define a class d that inherits c, and have instances of d behave
just like instances of c *except* for that single after method.
This suggests to me that you have analyzed your domain incorrectly.
It would seem that D is not really a subclass of C if you don't want
it to inherit the full behavior of M.
Why that? Each more specific primary method blocks the
less specific primary method. Thus you are not inheriting
the whole functionality. Sure, you can call the next method,
but by default this is not done. Overwriting less specific
functionality is a capability provided for primary
methods. Just not for :before and :after methods. But those
were design decisions for the standard method combination.
Indeed, based on your last.
sentence, it sounds like it's the other way around: C is a subclass of
D!
Of course you've left out a lot of information in order to abstract
the problem, so I don't know if this is really correct. But it's the
kind of question I would ask.
-- Scott
- Follow-Ups:
- Re: CLOS question
- From: Barry Margolin
- Re: CLOS question
- From: Scott Burson
- Re: CLOS question
- References:
- CLOS question
- From: Rob St. Amant
- Re: CLOS question
- From: Scott Burson
- CLOS question
- Prev by Date: Re: CLOS question
- Next by Date: Re: I symbolics still selling machines? does anyone use the lisp genera os?
- Previous by thread: Re: CLOS question
- Next by thread: Re: CLOS question
- Index(es):
Relevant Pages
|