How do you define "object-oriented"?

Kevin Fisher kgf at golden.net
Fri Apr 26 22:54:16 UTC 2002


Thanks, Alan!

What started for me today as a simple definition has blossomed into
something much deeper that I need to ponder.  This is quite fascinating!


On Fri, Apr 26, 2002 at 02:28:33PM -0800, Alan Kay wrote:
> Well, the meanings of terms change over time, and as my old friend 
> Rich Gold likes to say, terms are also "colonized" for political and 
> fad reasons. Personally, I started to regret having coined this 
> phrase almost immediately, in part because "object-oriented" seemed 
> too static. Simula-I used the term "process" to cover both what we 
> mean by "object" and "instance" (since classes were not themselves 
> objects). But this use of "process" was a little different from the 
> already in use definition in the US.
> 
> To me, in the beginning, what seemed most important were the 
> encapsulation, only message passing (which allows the algebraic 
> properties of polymorphism), everything made from the basic building 
> block, etc. Doing this right allows some of the other useful 
> abstraction mechanisms to be built. But the abstraction ideas have 
> always been a problem, in that nothing as "clearly sweet" as objects 
> has yet emerged. This has led to quite a profusion of half good ideas 
> about classes or prototypes, inheritance or not or multiple or 
> single, etc.
> 
> Finally, my original biology inspired ideas were completely 
> intertwined with late-binding (where I had LISP as a beautiful model 
> of how to generally go about things).
> 
> Cheers,
> 
> Alan
> 
> P.S. Real pioneers have the arrows in their chests!
> 
> -------
> 
> 
> 
> At 2:10 PM -0400 4/26/02, Kevin Fisher wrote:
> >I have a bit of a question...I'm just sitting down to learn Python right
> >now and I'm finding it a bit too C/C++ like for my liking.  What strikes
> >me about Python is it's claim of "object orientation"--and yet, it has
> >atomic types like 'int' and 'char' that are not objects  (shades of
> >C++ and Java).
> >
> >I've read the quote on smalltalk.org from Alan that (roughly paraphrased)
> >says "I invented the term object-oriented, and C++ was not what I had in
> >mind."
> >
> >Is it safe to say that something like Python is not truly object-oriented?
> >Or rather--if it's not objective right down to the smallest particle,
> >can it be called object-oriented?  I realize this could be a somewhat
> >flameworthy question...but I don't mean it to incite flames. 
> >
> >
> >(and then there's the other question about why all new languages go out of
> >their way to be so C-like...a personal beef of mine. :)
> 
> 
> -- 
> 



More information about the Squeak-dev mailing list