My 2 cents worth (worth a lot less than 2 eurocents these days
):
This is an example of how the class hierarchy of VA Smalltalk has grown in unanticipated, and not necessarily good, ways over the years. The original Abt<collection class name> classes came about due to a division of labor between 2 development groups (one inside IBM and one outside). The AbtHighCapacity<collection class name> classes came aboout in the same way -- they were developed as part of the ObjectExtender work by IBM Consulting and moved wholesale into the base.
So, what can/should be done at this point. It's time for a refactoring of, at least, the collection class hierarchy to pick out the essential differences between the classes and move these differences into their own methods so common code can be common. This might even give us the opportunity to parameterize algorithms -- after all, you don't need a different subclass of SortedCollection for each different sort algorithm.
Thoughts?
John O'Keefe [|], Principal Smalltalk Architect, Instantiations Inc.