Design Patterns and Collection Classes

Andrew C. Greenberg werdna at mucow.com
Thu Aug 29 02:03:10 UTC 2002


On Wednesday, August 28, 2002, at 08:50 PM, Richard A. O'Keefe wrote:

> "David Griswold" <David.Griswold at acm.org> wrote:
>
> 	So if there is any overall message here, it is:  be very careful
> 	with code in classes like this, and show great restraint by
> 	making changes as minimal as possible.  The code in Collection
> 	is simple, but not simple-minded.  Don't underestimate the
> 	subtlety of why these simple-seeming methods are the way they are.

Snip...

> Make no mistake:
>  - I am not saying Smalltalk is unusable.
>  - I am not saying the Collection classes are unusable.
>  - I am not saying that the Smalltalk designers are culpable.

I am relieved.

> What I _am_ saying is that the Smalltalk designers weren't _trying_ to
> produce highly polished code but were engaged in research of a 
> completely
> different kind, so that they produced 'good enough for the immediate 
> task'
> code which after 20-odd years outside the lab is overdue for an 
> overhaul.

Reasonable people may differ on these conclusions, yes?

> The Collection classes are a means to an end, not Holy Writ, and 
> mortals
> may dare to criticise and revise them.

Richard fails to understand that he is not being challenged merely for 
criticizing or proposing to revise the Collection classes -- he is 
being challenged on the merits of his criticism and proposals.  To the 
extent a question is a close one, no doubt, David is strongly 
suggesting that a conservative view is warranted, and this does not 
seem unreasonable.  To the extent Richard prefers to think that this is 
the corpus of David's criticism, he misses the point and is arguing 
against a straw man.

Here, Richard does seem to challenge the possibility that those who 
disagree with the conclusions he proposes might have provided reasoned 
or reasonable arguments.  All evidence, I believe, is to the contrary 
-- everyone on both sides seems to be doing a fine job of writing 
persuasively in support of their positions.

However, where Richard here presumes to lecture Ralph Johnson about 
Design Patterns without greater particularity on the merits, between 
them, I shall defer to the views of one of the Gang of Four until I see 
clear  evidence to the contrary.




More information about the Squeak-dev mailing list