On 10/01/20 12:25 AM, Kasper Østerbye wrote:
This rant states once again that in Smalltalk everything is an object.
The word 'object' has been bandied about with multiple meanings, so it is understandable that you would challenge this claim. Smalltalk uses the term 'object' with a specific meaning - see chapter 30 of bluebook (Formal Specification of Object Memory)[1] for a concrete definition.
The image is an object graph. The allocated memory in a heap consists entirely of a list objects which can be iterated through first/next messages.
You need only two tools - Inspector and Explorer. Inspect to examine a single object and the explorer to trace interconnections in the object graph.
Implementations like Squeak or Pharo may use strings instead of fully reifying programmable entities but that doesn't mean that they cannot. Also, some 'objects' may be managed entirely within the VM interpreter for pragmatic reasons.
To me, what really is nice about Smalltalk is NOT the language - it is the image and live programming. And I can get around all the problems with the language because of it. I miss:
Bingo! Smalltalk is best understood as a virtual machine with live programming facility. Language is only a small part of it.
[1] http://www.mirandabanda.org/bluebook/bluebook_chapter30.html Regards .. Subbu