consistency in Self

Michael Grant Wilson mcq at
Mon Jun 27 19:36:37 UTC 1994

on Tue, 28 Jun 1994 12:29:30 -0400 urs at 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>'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 mailing list