24.01.2014, 22:58, "Robert P. Goldman" rpgoldman@sift.info:
I believe that the issue was that Faré couldn't preserve both:
- OPERATION is the universal superclass so that methods on it could do
things like introspection, collect statistics, etc. and
- OPERATION provides a certain expected set of behaviors to those who
wish to provide their own subclasses.
He had to choose one or the other, so he chose 1, and sacrificed 2. He has successfully convinced me, at least, that he couldn't do both.
Idea.
Theoretically, OPERATION may be the root class and keep the old semantics (downward + selfward + other). And subclasses override this semantics as they do now: DOWNWARD-PERATION, SELFWARD-OPERATION, etc.
This may lead to some code duplication in ASDF.