smalltalk76
Dan Ingalls
Dan.Ingalls at disney.com
Sat Mar 31 20:28:37 UTC 2001
>>But it would seem to me that a circular
>> superclass relation would require a special termination test just as
>> much as the current nil superclass one does. I would be very much
>> interested in knowing what you can do in microcode that can't be done
>> in assembly or C, specially since I am currently building a microcoded
>> machine!
>
>I would like to know the same.
The actual implementation of ST-76, as revealed in the appendix of
http://users.ipa.net/~dwighth/smalltalk/St76/Smalltalk76ProgrammingSystem.html
did not have a circular superclass chain. It ended with nil, as now. You can see this in the code for
send: message | class meth callee t i "send a message"
[class := self top class.
until:: (meth := class lookup: message) do:: "look up method"
[class := class superclass. "follow the superclass chain if necessary"
class = nil ==> [user notify: 'Unrecognized message: ' + message]]
....
[I have had to substitute some characters. The original URL has them right, thanks to Dwight]
- Dan
PS: If you like teases, there's a chance that some time in May Squeakers will have an opportunity to play with Smalltalk-76 in an even more direct form than the ST-72 simulation from a couple of years ago.
(Helge knows about this, but he's not talking either ;-).
More information about the Squeak-dev
mailing list
|