Dear List,
While programming with Simon, we bumped into a sensible issue. Consider the two following methods:
SetupStorage>>selectAllWithType: aSmalltalkClass ^ self select: [ :each | "-- select returns an ArrayList" each isKindOf: aSmalltalkClass ]
RuntimeStorage>>selectAllWithType: aSmalltalkClass ^ byGroup at: aSmalltalkClass ifAbsent: [ OrderedCollection new ]
These two methods do not have the same behavior. We could have something starting with "(byGroup keys select: [:cls | cls isKindOf: aSmalltalkClass]) ..." But that would defeat the whole idea of having different storages...
Cheers, Alexandre