Quoting Yukihiro Matsumoto <matz / ruby-lang.org>:

> Hi,
> 
> In message "[ruby-talk:18311] Re: Ruby as opposed to Python?"
>     on 01/07/23, Lloyd Zusman <ljz / asfast.com> writes:
> 
> |I'm virtually certain that Guido designed Python to be O-O from day
> |one, and so I wouldn't call it a "hybrid" at all.  Perhaps you're
> |thinking of Perl, whose OOP capabilities are indeed add-ons (and
> |rather hack-ish, IMNSHO).
> 
> I know the first release of Python had OO capability, but if he really
> designed Python to be OO from day one, there's no class-type (or
> object-instance) separation, which he has to suffer until Python 3000.

These features (class-type/object-instance separation) indeed
distinguish Ruby from Python.  It is these features and others
which make Ruby much more like Smalltalk and also very interesting
and desirable to use.  I congratulate you.

I was not taking issue with ideas such as these, but rather, with
the statement that Python's O-O features are add-ons, which they
are not.

I also stated that Python is not a "hybrid", and by this I meant
that it isn't a non-O-O language to which some O-O constructs
were later added (such as Perl and C++).  If by "hybrid" it is
meant that not all of Python's functions are methods, not all of 
Python's data types are objects, etc., then in this sense, Python 
would indeed be a "hybrid".  And by this definition, Ruby is *not*
a "hybrid".

However, I still consider Python to be an O-O language, since
I use a less strict definition of "O-O" than many people here
do.

> 							matz.

--
 Lloyd Zusman
 ljz / asfast.com