consistency in Self
urs at cs.stanford.edu
Tue Jun 28 16:29:30 UTC 1994
> Maybe this is an extreme point of view - but don't you think it's inconsistent
> that you can't have a parent slot 'implemented' as a method?
> OK - so it might be a bit slow - you'd have to call the parent slot method(s)
> for an object for every message it received.
Given the obvious implementation difficulties, a pragmatic answer
could be to ask for some examples demonstrating the usefulness of
methods-as-parents. (Implementation is difficult because it's hard to
"constant-fold" a method execution and thus to inline a send whose
lookup goes through a "method parent".)
But besides the implementation difficulties there are some semantic
problems: in what context is the method evaluated (i.e., what is
"self")? And what happens if the method sends a self message? The
resulting (potential) infinite recursion would seem to limit the
usefulness of methods-as-parents (you could only send messages
accessing slots in the object itself or in descendants).
On the other hand, they would be a wonderful tool for an annual
Obfuscated Self Contest. :-)
More information about the Self-interest