How do you define "object-oriented"?

Nevin Pratt nevin at smalltalkpro.com
Fri Apr 26 18:59:18 UTC 2002


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. :)
>
>
>
Non-objects (such as the native types in Python, Java, Objective-C, et 
al.) are just that: "non-objects".

But, having some non-objects (i.e., native types) in a system doesn't 
stop you from also having objects in that same system.  It just gives 
the language a schizophrenic personality, that's all.   And, of course, 
that kind of language schizophrenia typically introduces other problems 
as well, but that's another topic.  :-)

Nevin






More information about the Squeak-dev mailing list