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

Paul Prescod paulp at ActiveState.com
Mon Jul 16 03:21:32 EDT 2001


Tim Hammerquist wrote:
> 
> <*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?

Python allows you to build larger systems in less time than traditional
technologies (C++, Java, COBOL, etc.).

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

There is an RDBMS in Python. I know a company that embedded it in a
prototype expecting that it would not only reduce the development time
but also encourage the customer to come back and ask for the "real
thing". But the customer didn't. Anyhow, I wouldn't try to *sell* an
RDBMS written in Python because it wouldn't be performance-competitive.
What does that have to do with application sizes? Or ActiveState? (by
the way, groups.google.com will show that I was a Python booster before
ActiveState even existed so it would be somewhat ironic if I now decided
to stop promoting Python because people would consider it an indirect
way to sell ActiveState products)

> ....[stuff about BSD] It's written in C, which does
> not even claim to be an OO language.

Funny, my message didn't mention object orientation or object oriented
programming. You're just knocking down a straw man.

> 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.

I didn't say otherwise. But a language can support a programmer in
trying to choose scalable algorithms and abstractions or it can make it
difficult. You said you wouldn't implement a word processor in assembly
language so you must agree. In my experience, Python is at the opposite
end of the productivity spectrum from assembly language when it comes to
large programs. Other popular programming languages fall somewhere in
the middle. YMMV.

-- 
Take a recipe. Leave a recipe.  
Python Cookbook!  http://www.ActiveState.com/pythoncookbook




More information about the Python-list mailing list