First Analysis of SystemDictionary
Last updated at 11:37 am UTC on 21 June 2003
What have be done so far
- power disabling -> PowerManagement
- screen management -> Display
- browsing -> SystemNavigation
- change -> ChangeSet class
- deprecates imageReaderClass and other
- move fullScreenMode to DisplayScreen
- printSpace..., spaceTally move to SpaceTally
To be done
SystemDictionary has far too much responsibilities as we can see:
I tried to make already some conceptual groups
- namespace fonctionality (this is clearly the responsibility of SystemDictionary so this should stay there)
- benchmarks (marcus proposed: MacroBenchmarks removal
http://map2.squeakfoundation.org/sm/package/752a4009-209c-4fcc-a611-ef4e79a8d84b and MacroBenchmarks http://map2.squeakfoundation.org/sm/package/d3f5ddc4-aa6c-45ba-81b1-c23f3bd6c929) Excellent.
- time ??
- space profiler (-> Profiler class ?)
- shrink scripts (May be this was for shrinking that someone proposed to move the them into a separate class, it is correct ?)
- sources and changes
- VM support such a isLittleEndian
- snapshot functionality such as addToShutDown
- profiling (could go with VM support)
- Pluggins list access
- special Object and GC (in VW there are I guess in ObjectMemory the class that represent the memory)
- platformInformation
- VM parameters
- memorySpace
From Andreas:
I have the impression that in a successfull first attempt would keep in SystemDictionary:
- VM stuff
- namespace
- may be change management
New proposition from Stef
I would like to move away from SystemDictionary
- 'memory space' methods
- I was thinking to create a MemorySpace class
- vm related information (listModule, vmParamAt...)
- 'snapshot and quit' + 'image, changes name' + condense changes ->
Analysis done during the meeting on 18th June (Stef, Roel, Noury)
- VM related methods (getParameterAt:..., listBuiltInModules..., unloadModule..., quitPrimitive), profile...,to move a new singleton class VM
- logeError:inContext:to: move to a new class Log
- pointers... move to Object (VisualWorks owners)
- unusedClasses... move to SystemNavigation (right class?)
- poolUsers move to SystemNavigation
- Rename SystemNavigation to SystemAnalysis
- Remove methods (no longer used): readDocumentFile
- category image, changes name + saveChange...: move to a new class SystemFiles (stef would prefer to have that in SmalltalkImage)
- category memory space: move to a new class SmalltalkImage
- add/removeToStartUp..., add/removeToShutDown..., saveAs...to a new class SmalltalkImage