[Rant] Shrinking problems and rampant interdependencies

Kevin Fisher kgf at golden.net
Tue Jul 24 01:11:46 UTC 2001


On Mon, Jul 23, 2001 at 04:57:23PM -0700, Tim Rowledge wrote:
> I'm trying to shrink an image. I need make an image with morphic but
> relatively little else outside the typical core stuff.

I feel your pain. :)


> 
> In other words, a fairly typical sort of setup that many of us might
> want to use for a demo package; indeed very like the setup we used for
> the exobox code. It's not too hard to hack the majorShrink code to leave
> in morphic, add some code to dump odd parts of unwanted Morphic etc, but
> there are so many places where rampant interdependencies screw you.


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.

(Note, the above sizes are also source-abandoned).

I've been unable to figure out just what is making the 3.1 image so 
much bigger!

> 
> Just as a for example, why does StandardScriptingSystem hold all the
> icon Forms used in the debugger? You can't dump that class if you want a
> working image. Foo!
> 
> I swear there are even more than back in 2.8. I'm annoyed.
> 
> tim
> 

Check out the Projects that are resident in the image.  Even after shrinkage
a number of the demo projects will still be around...I usually manually
delete them with "Project deletingProject:".  Strangely, the "Building with
Squeak" project always returns to the Project list after I've shrunken
my image!

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.






More information about the Squeak-dev mailing list