Adding a new imediate type

Andreas Raab andreas.raab at gmx.de
Wed Jan 11 06:02:41 UTC 2006


Alan Lovejoy wrote:
> Andreas wrote: "The warning you get when you try to change UndefinedObject
> is just that
> - a warning that you should't do that but you can actually safely ignore it.
> I just did (for the fun of it)."
> 
> When I tried it in a 3.7 image, it went into "not responding" mode--and
> stayed there for so long that I finally killed it.  The machine I used uses
> an AMD FX-55 and has 2GB RAM.

This may be a misunderstanding - notice that I wrote adding an iVar to 
*UndefinedObject* not to *Object*. The reason this will fail for Object 
is that the VM has some assumptions about the layout of certain classes 
- most importantly contexts, which, if break, will wreck havoc on the 
running system (BitBlt and friends would die, too, which is kinda bad 
for the user experience ;-)

> I got the same result when I tried in the early '90s in VisualWorks, and the
> explanation for the failure I came up with was as I have already recounted
> it.
> 
> Has something that might affect the result been changed since 3.7?

I don't think so. You can modify *UndefinedObject* in either version 
(but *Object* in neither).

Cheers,
   - Andreas



More information about the Squeak-dev mailing list