OO misconceptions (was: Re: Long Live Python!)

Tim Hammerquist tim at vegeta.ath.cx
Sun Jul 15 19:15:17 EDT 2001


<*someone*@ActiveState.com> wrote:
> Python allows you to build larger systems because it allows a looser
> binding between granular components, it allows more to be done in less
> code and it makes testing so much easier that the loss of compiler
> warnings is trivial.

I'm all for rapid development and such, and I use Python whenever I think
it has an advantage over another choice (which is quite often).

But what does 'larger' mean in this case?  Larger than the MySQL engine?
Larger than a linux kernel?  Larger than the Red Hat install scripts?

I wouldn't implement a RDBMS in Python. Nor would I implement a word
processor in assembler.

*nix OSes (like BSD) have attained an incredible scalability.  Many
attribute this to the fact that everything in this OS is a "file",
whether data on a hard drive, a hardware device, or a running process.
This is a type of abstraction.  Obviously /dev/scd0 isn't a file, at least
not in the sense that /etc/services is.  But each "file", regardless of
what it's linked to, has the same basic interface: open, close, read,
write, etc.  Is this not a form of OO?  And what language is the
majority of the core of BSD written in?  It's written in C, which does
not even claim to be an OO language.

An application's scalability has much more to do with the programmer's
use of algorithms and abstraction than with the language in which it's
implemented...no matter how much money ActiveState has invested in it.

-- 
It's astonishing how much trouble one can
get oneself into, if one works at it.
    -- Destruction, The Sandman



More information about the Python-list mailing list