[Rant] Shrinking problems and rampant interdependencies

Andreas Raab Andreas.Raab at gmx.de
Tue Jul 24 01:42:10 UTC 2001


Kevin,

> Well, check out http://www.reasonability.net/ipaq...  I have
> a changeset up there that I use to shrink Squeak to fit on my
> iPaq.  It throws away a lot, but keeps a functional core.
> I make no guarantees, but it works for me...heck, I can't even
> guarantee that I've kept/tossed the right things, but the image
> resulting works just fine (so far!).
>
> The results definitely vary depending on the image you run it
> on...if you use this changeset on the 3.0 image you can get a
> very small Morphic image (around 4.8M).  However, the 3.1 image
> with the latest changesets is about twice that size, with the
> same shrinker changeset.

This doesn't sound right. The Squeakland plugin image (which is 3.1 based)
is about 5.5MB and it includes everything but FFI, 3D, Speech, and VM
construction stuff.

BTW, a common reason for large images are change sets - dumping all the
updates can bring you a long step forward.

> Also, I think something may be funky with the "Help->space
> left" command in TheWorldMenu...whenever I select it, it ALWAYS
> reports that there is "one undo record left in the system."
> Not sure if this is normal, or if if this means there is something
> hanging around in memory that just refuses to get GC'd.

The latter. The following will do the trick:

	Smalltalk allObjectsDo:[:o|
		o isMorph ifTrue:[o removeProperty: #undoGrabCommand]].

[This is due to a period between updates in which the undo command was not
properly nuked]

Cheers,
  - Andreas





More information about the Squeak-dev mailing list