consistency in Self
Michael Grant Wilson
mcq at oti.on.ca
Mon Jun 27 19:36:37 UTC 1994
on Tue, 28 Jun 1994 12:29:30 -0400 urs at cs.stanford.edu wrote:
> On the other hand, they would be a wonderful tool for an annual
> Obfuscated Self Contest. :-)
Not required. After C++, Self is already the most easily obfuscated
language on the planet.
However, I agree with <ivan at cs.man.ac.uk>'s point. Generality is
important. You should be able to use a method for your parent
slot. If you can't it exposes a hole where the implementation is
showing through. Essentially, it's wrong for the same reason
that it's wrong that most Smalltalk implementations prevent you
from changing the implementations of many of the "critical"
low-level methods (like SmallInteger>>#+).
Besides, it's not as if you can't detect this case, so it doesn't
prevent you from optimizing methods which don't use the feature.
It's just a bit more internal bookkeeping.
Infinite recursion is only a problem if you let it be a problem.
We are talking about a powerful feature, that has to be used carefully.
There are lots of ways to blow yourself away with infinite recursion
now. This one's just a bit more subtle.
More information about the Self-interest