Wheel-reinvention with Python

Mike Meyer mwm at mired.org
Tue Aug 2 06:18:52 CEST 2005

Torsten Bronger <bronger at physik.rwth-aachen.de> writes:
> Hallöchen!
> Mike Meyer <mwm at mired.org> writes:
>> Torsten Bronger <bronger at physik.rwth-aachen.de> writes:
>>> [...]
>>> None of us has talked about changing syntax.  However, the
>>> standard library is part of the language unless you're really
>>> very petty.
>> Or you use different Python implementations. There are four
>> different Python implementations in the world. Not everything in
>> the CPYthon standard library runs in all of them. Or are you going
>> to claim that someone usin Jython isn't using Python because they
>> can't use the full standard library?
> Well, in a way, they aren't using Python indeed.  For example, most
> Python books tell only partly the truth in this case.

Well, in a way, you're right. On the other hand, Guido has always
insisted that CPython is just an implementation, and not a definition.

>>>>> This is not a sign of decadence, but a very good promotional
>>>>> argument.
>>>> But it's not required for the language to succeed.
>>> Today it is (except for very special-purpose languages).
>> To put this differently, it's required if you want to succeed as a
>> language for the specific purpose of creating GUI
>> applications. I'd agree to that. But there are *lots* of other
>> application areas around, so limiting your definition of "success"
>> to that one field is very short-sighted.
> You have to take into account not only the number of application
> areas, but also their respective importance.

True. To you, GUI applications are very important. To me, they pretty
much don't matter at all.

> I'm interested in a language with a big community.  This is my
> definition of success.  It has to do with the functionality I can
> expect (more contributors can create more modules and documentation)
> and with future-proofness.
> GUI applications seem to be the most attractive application type.
> This is not only true for commercial programming.  When I look at
> the most agile projects on Sourceforge, almost all of them have a
> GUI.

Why restrict yourself to agile projects? For that matter, how do you
decide if a project is agile or not?

I won't argue that most of the projects on Sourceforge have GUIs -
that's certainly true. I will argue that most of the projects are done
in languages that aren't what you call GUI-aware.

> Therefore, GUI-aware languages attract much larger user bases, and
> so they cater my definition of being successful.

Since you haven't stated what that definition is, I can't really say
anything about this. If you're counting applications on sourceforge,
the evidence doesn't support your conclusion. C and C++ are the most
used languages by an order of magnitude, and neither of those has
integral GUI support.

>> [...]  By which measure C is still immensely popular, because of
>> the large number of older applications that are written in it that
>> are available - Python being one such.
> Legacy code is not a sign of success IMO because it implies a
> difficult future.

So you're saying that Python, Perl, Linux, the various BSD
et. al. will have a difficult future? If you believe that about
Python, then why are you here at all?

>> [...] I'd say Python has succeeded as a web development language,
>> and as a systems scripting language - and I've certainly missed
>> some.
> I don't think that Python should rely on these old strongholds.  In
> the biggest bookstore of our region, there is one book about Zope
> but a whole bookself about PHP.  And I've never used consciously a
> Python system script in contrast to dozens of Perl scripts.

Um - you should compare apples to apples. Zope is an application
development framework, and doesn't really compete in the same space as
PHP and Python. For that matter, as you note, PHP is a special-purpose
language (for a very popular application area) whereas Python is
general purpose language.

As for system scripts, Python is the primary system scripting tool for
a number of Linux distributions (gentoo and redhat come to mind), and
if I understand correctly, it's also used pretty heavily in OS X.

> In contrast to PHP or Perl, I consider Python a general-purpose
> language.  There is its future in my opinion.  However, this area is
> much tougher, and you need a good GUI approach there.

I know a large number of people who'd argue with you implying that
Perl isn't a general-purpose language. It's more successful than
Python pretty much across teh board.

>>>> [...] Could it be that that's what you really want - someone to
>>>> distribute Python bundled with an enterprise-class GUI library
>>>> and IDE?
>>> Well, a nice thing to have, but besides my point.
>> Then you seem to have missed some of your own points. C++
>> succeeded without having a standard GUI library. You claimed that
>> that success was because of a single distribution that included
>> the things you are looking for. Why can't the same thing work for
>> Python?
> I just didn't say that it couldn't work.  But I don't think it'll
> happen, that's all.

Well, if you dismiss it out of hand, it certainly won't happen. Try
asking ActiveState (they seem to be the major alternative distribution
of CPython) to consider it, rather than trying to get it into the
www.python.org distribution of CPython.

Or maybe you could switch to Jython, and just use swing?

Mike Meyer <mwm at mired.org>			http://www.mired.org/home/mwm/
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.

More information about the Python-list mailing list