The Evolution of Smalltalk
Created on 2020-08-09T23:20:37.518478
- Smalltalk was written in assembly at first, but subsequent Smalltalks were themselves written in Smalltalk.
- Very small integers are stored directly in machine words with special tags, otherwise words are pointers to objects.
- The subscript operator and left arrow was lost in the conversion from ST-78 to ST-80. They would have rather had "a ! b := value" instead of "a at: b put: value."
- True and False are subclasses of Boolean. They can then implement boolean-based control flow as any other message that makes use of blocks.
- Object is a subclass of nil
- `become:` was added when object types were moved from hash tables (OOZE) to indices in an object type vector.