[squeak-dev] Re: history of ideas: subclass responsibility
Klaus D. Witzel
klaus.witzel at cobss.com
Sat Aug 2 18:00:22 UTC 2008
On Sat, 02 Aug 2008 17:45:03 +0200, Stefan Sobernig wrote:
> Dear Squeakers,
>
> (sorry for cross-posting; already posted to comp.lang.smalltalk)
>
> For a piece of research I am currently working on, I have been
> reviewing the arsenal of publications on the genealogy of Smalltalk(s)
> for some hints on the origin of the
> Smalltalk-specific "subclass responsibility" approach, i.e. the
> Smalltalk dialect for "abstract object-classes",
> roughly speaking.
Interesting question (origin) indeed :)
> I am particularly interested in references to design
> decisions. It would be particularly enlightening to know
> whether the Xerox crew was aware of the "virtual quantity" feature
> introduced in Simula-67 and their perception (beyond the mere difference
> with respect to type checking). I do have thoroughly
> studied "original" Smalltalk-related contributions, far beyond the
> Blue Book, but could not find explicit references beyond the mere fact
> that this is the Smalltalk way of doing it; but why?
>
> Note that I am well aware of more recent discussions on that very
> matter, especially in your community on the semantic consistency of
> subclassResponsibility:
>
> http://wiki.squeak.org/squeak/472
>
> I am also aware of other language families that approach the idea of
> deferred-required implementation by means of a /placebo/ (what I would
> call it as a strategy).
>
> Over at comp.lang.smalltalk, I was given as part of a more thorough
> answer:
>
>> Because we also need a way to respond
>> for the general case of a message received
>> that is not understood.
>
> So, abstract super-classes are considered a special case deriving
> from a more general issue.
What I always liked are the paragraphs between "Inside every large program
there is a small program trying to get out. ?C.A.R. HOARE" and "In
class-based object-oriented systems, partial implementation is usually
supported in the form of abstract classes." in the paper linked below.
What I mean is the emphasis on partial, incomplete implementation, made
possible by late binding, a valuable tool for incremental development and
maintenance.
> Is anybody aware of some nuggets out there? I would be grateful for
> any hint + your thoughts when looking at your languages' history ...
Perhaps there are some nuggets in the paper from which the above was cited,
- http://portal.acm.org/citation.cfm?id=243439.243441
/Klaus
> Best,
> //stefan
>
>
More information about the Squeak-dev
mailing list
|