Re: CLOS question
- From: Scott Burson <FSet.SLB@xxxxxxxxx>
- Date: Sun, 29 Jul 2007 22:15:19 -0000
On Jul 29, 3:09 pm, Rainer Joswig <jos...@xxxxxxxxxxxxxx> wrote:
In article <1185746464.124847.288...@xxxxxxxxxxxxxxxxxxxxxxxxxxx>,
Scott Burson <FSet....@xxxxxxxxx> wrote:
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.
If D is a subclass of C, then although D may override a primary method
of C, D's method should maintain all the invariants that C's method
does. Demon methods are a handy way of maintaining invariants. It
doesn't sound right to me that C would have some invariant that it is
maintaining with a demon method, and yet that invariant doesn't apply
to one of its subclasses.
-- Scott
.
- Follow-Ups:
- Re: CLOS question
- From: Rainer Joswig
- Re: CLOS question
- References:
- CLOS question
- From: Rob St. Amant
- Re: CLOS question
- From: Scott Burson
- Re: CLOS question
- From: Rainer Joswig
- 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
|