Yes, apparently one has to debug the primitive to get what's really happening. Thanks Ben, Hernán 2015-01-25 13:08 GMT-03:00 Ben Coman <btc@openinworld.com>:
On Sun, Jan 25, 2015 at 8:16 AM, Hernán Morales Durand < hernan.morales@gmail.com> wrote:
Behavior basicNew basicNew.
I guess philosophically, #basicNew creates an incomplete object, so sending it messages is in the hands of the gods. Now the following works okay... Behavior new basicNew
So something in its #initialize makes it not crash. Rolling out Behanior>>initialize and commenting out a line at a time to get the minimum statements to prevent crashing results in the following...
behavior := Behavior basicNew.
"behavior superclass: Object." "behavior methodDict: behavior emptyMethodDictionary."
behavior setFormat: Object format.
"behavior traitComposition: nil." "behavior users: IdentitySet new."
behavior basicNew.
So the VM will crash if you fail to #setFormat. That is as far as mu understanding goes. cheers -ben
Class basicNew basicNew.
No .log is generated Applies to Pharo4 #40460 and Pharo 3.0 (Windows 8.1)
Cheers,
Hernán