I was surprised to see that Smalltalk-72 was actually a much different language. In some ways it reminded me of Lisp macros and a bit of stack languages like Forth.
This document [0] and especially Appendix II in this pdf [1] explain it well. Essentially an object just gets the unparsed message sent to it for it to do what it wants. So the code for an object basically parses the raw symbols to figure out what message to respond to.
The first Actor languages were inspired by Smalltalk-72 and make a lot more sense if you are familiar with -72 and less for those who only know Smalltalk-80.
Excellent video by Dan Ingalls on the Xerox early history of Smalltalk.
In November 1972, Alan Kay gave an inspiring seminar at MIT
on Smalltalk-72. There were ongoing discussions during the weeks after the lecture about the following:
Dennis and van Horn capabilities
Petri nets
Smalltalk-72
Simula, which was strangely very different from Smalltalk-72
the Internet
etc.)
After extensive discussion about limitations of previous
efforts, we realized that
there is a single abstraction that provided the foundation
for all of computation which it was decided to name the
"Actors Abstraction". The Actors Paradigm covers all of
digital computation and consequently is more powerful than
Church/Turing Paradigm.
Although the use of bitmap displays with Smalltak-72
was very impressive, Smalltalk-72 left a great deal to
be desired as a programming language.
Later Smalltalk designs were completely
different because they adopted the Simula class
hierarchy instead of the byte stream interpreter of
Smalltalk72
Limitations of Smalltalk72 reinforced the decision to not
define the fundamental abstraction of computation using a
programming language. Instead computation should be
defined axiomatically in terms of fundamental concepts including
Actors
Computational Events
Partial order on computational events
Regions of mutual exclusion
Event induction as the foundation for proving properties of Actors Systems
See the following on how to axiomatically define computation
I think messages should be able to carry Actors. But there needs to be a "meaning" to a message. Therefore the message must pass on words and sentences which are the interpreted by whoever receives the message.
This document [0] and especially Appendix II in this pdf [1] explain it well. Essentially an object just gets the unparsed message sent to it for it to do what it wants. So the code for an object basically parses the raw symbols to figure out what message to respond to.
[0] http://worrydream.com/EarlyHistoryOfSmalltalk
[1] https://raw.githubusercontent.com/worrydream/EarlyHistoryOfS...