[squeak-dev] 3.10 image

Gary Chambers gazzaguru2 at btinternet.com
Mon Feb 25 20:03:29 UTC 2008


+1 from me

----- Original message -----
From: Igor Stasenko  <siguctua at gmail.com>
To: The general-purpose Squeak developers list  <squeak-dev at lists.squeakfoundation.org>
Sent: Mon, 25 Feb 2008, 19:57:14 GMT
Subject: Re: [squeak-dev] 3.10 image
It's really time to think about what Keith proposed a while ago:

I am all for it, to include #cleanUp message to standard Behavior
protocol. So people shouldn't write own sophisticated cleanUp scripts,
and do just:

Smalltalk cleanUp.

And package authors implement own #cleanUp in classes, where they
think it needs to.

(Sorry i can't find this mail in archives, so i putting it as text here)
-------------------
Dear All,

If possible I would like to encourage package developers to support two
conventions for cleaning up images

Firstly to remember to adopt the memory hogs convention (which is rarely
used) of implementing #freeSomeSpace.

Although the lowspace watcher currently requires potential memory hogs
to register themselves, I propose implementing the methods anyway, with
a utility method available via 'SmalltalkImage current freeSpace' to
invoke an image wide belt tightening.

#freeSomeSpace would be for cleaning out caches and so forth that would
not imped normal functioning.

examples:

Utilities-class-#freeSomeSpace
       self cleanseOtherworldlySteppers

Secondly to formalize #cleanUp as a message that users will send in
order to try and tidy up an image as much as possible before saving or
deploying.

examples:

In Seaside this would require:

WACachedDocument class-#cleanUp
   self clearCache
WAHalo-class-#cleanUp
   self initialize
WAKom-class-#cleanUp
   self stop
WARegistry class-#cleanUp
   self clearAllHandlers

In DynamicProtocols this would require
DynamicProtocols-#cleanUp
   self invalidateCache

I am sure there are many other instances where this would be useful.

how about it?

Keith
-------------------

-- 
Best regards,
Igor Stasenko AKA sig.




More information about the Squeak-dev mailing list