On Fri, Aug 1, 2014 at 10:00 PM, Pascal J. Bourguignon <pjb@informatimago.com> wrote:
Jean-Claude Beaudoin <jean.claude.beaudoin@gmail.com> writes:

> So my question is: Which one is right?

I'd note that this is a major problem of how OO libraries or
frameworks are defined.  They very rarely specify or give any guarantee
of when or whom will send a given message to a given object.

This makes indeed difficult to subclass and override methods in a sturdy
way.

This is probably a reason why OO programmers nowadays tend to distance
themselves from inheritance (using so called "flat" hierarchies), and
like "final" methods a lot, which basically denies OO itself.



Which is a real shame, because Gregor et al wrote some excellent
rules on how to design protocols well in the face of things like
inheritance and method combination. I think this is all in AMOP.

 
Otherwise, for your question, you didn't mention any metaclass.  I'm not
sure about it, but I would expect such methods from AMOP to be used
consistently only when you define your own metaclasses.


--
__Pascal Bourguignon__                 http://www.informatimago.com/
“The factory of the future will have only two employees, a man and a
dog. The man will be there to feed the dog. The dog will be there to
keep the man from touching the equipment.” -- Carl Bass CEO Autodesk

_______________________________________________
pro mailing list
pro@common-lisp.net
http://common-lisp.net/cgi-bin/mailman/listinfo/pro