On Nov 7, 2010, at 4:04 PM, Levente Uzonyi wrote:
On Sun, 7 Nov 2010, Benjamin wrote:
On Nov 7, 2010, at 10:51 AM, Stéphane Ducasse wrote:
SmalltalkImage current instVarAt: #globals put: SystemDictionary new Something like that.
This code initialize Smalltalk, but I haven't found where Smalltalk is stored. Smalltalk is not a SmalltalkImage inst var nor class var neither Smalltalk class inst var ... So I wonder where to find it ...
Smalltalk is a global. Globals are stored in a SystemDictionary. So far the only instance of SystemDictionary is the value of [Smalltalk globals]. Currently Smalltalk is a SmalltalkImage. SmalltalkImage has an instance variable called globals which holds the SystemDictionary. So
(Smalltalk globals at: #Smalltalk) == Smalltalk.
But SmalltalkImage also understands some of the protocol of SystemDictionary, because originally Smalltalk was a SystemDictionary, so you can write this too:
(Smalltalk at: #Smalltalk) == Smalltalk
Levente
Thank you for your explanations ^^ Ben
Ben
? On Nov 7, 2010, at 2:46 AM, Benjamin wrote:
Hi guys, I wonder how SmalltalkImage create the Smalltalk instance. Can someone explain me that ? Thank you Ben