Future of the Python Linux Distribution

Vetle Roeim vetler at ifi.uio.no
Mon May 8 00:55:37 CEST 2000

on 2000-05-07, Glyph Lefkowitz wrote:

> >  - age. the other "P" language[0] has been around a little longer.. right?
> I hear this tossed around a lot.  How *much* longer?

I'm not really sure..
> >  - forced intentation. a friend of mine once said that he
> >    categorically dislikes languages that forces that kind of
> >    limitations on the programmer.
> what language does this guy use?  I imagine that it forces him to
> treat stack frames as implicit... possibly even to use an imperative
> syntax.  Or infix notation.  Anyone who believes that the language
> they use doesn't impose restrictions and enforce a paradigm on them is
> deluding themselves (and not well, at that).

he uses a lot of them. Common Lisp, Ada, Simula, C++, C, Haskell, ML. he
knows languages impose restrictions, but he dislikes the restrictions
Python impose.

> >    this aspect of Python *is* a litle weird. but all languages have
> >    their weirdness.. many people judge are scared of new things.
> I was scared of python for this very reason for *ever*.  We need a
> publicized, annoying, LOUD defense of this feature of the language.
> Every time I look at python code these days, I feel like slamming my
> head into the wall; to THINK that I missed out on this for a YEAR
> because I was dumb enough to think that enforced whitespace was not
> only a big deal, but a BAD thing!!

.. but let's not make this a religous war. Python is not the solution to
all problems, and we should not make it.

Some people ask me: "why should I use Linux?"
I usually answer: "if you need it, you'll know."
> >  - books. I may be very wrong about this, but are there more books
> >    about the other "P" language?
> It requires more documentation.  I can't make it 5 lines through a
> perl script without 25 consultations of the Camel Book.  
> I bought two python books from o'reilly on principle, but I haven't
> really needed them.  This is a *GOOD THING*.  We need more python
> books that cover higher-level concepts.  Learning Python isn't about
> "learning python"... it's about unobscuring good programming.

I mainly use the documentation available on python.org, and for Tkinter I
use John Graysons excellent book, "Python and Tkinter Programming", as
well as the Tkinter (and Pmw) source.

I haven't read Learning Python, but I hear it's really good. 

> Learning Perl is about learning perl.  Capitalization important there:
> uppercase-P is the language, lowercase-p is the interpreter.  If you
> don't know the in-and-outs of the perl interpreter, and the quirks it
> has, you can't do anything.  Now, python has some nifty quirks too (my
> code is riddled with __setattr__ and __getattr__.  I LOVE them!) but I
> seriously doubt there will ever be a JPerl.

ssssshhhhhh! don't give them any ideas! <wink>

(when we're on the subject of Java: there's a graduate student at my
university who's working on a Simula-to-Java compiler.. :-))

> >  - not hackish enough. Python code is nice to look at. code written in
> >    the othet "P" language looks cooler.. to me (I'm an academic) it
> >    just looks ugly. code should be beautiful.
> >    but some people see that Python is all nice and tidy, and so they
> >    dislike it because they can't write ugly, unmaintainable code[2]
> Stupid, stupid, stupid, stupid...
> First of all, this is NOT an admirable goal as an engineer, and it's a
> problem with the software industry at large, not with Python...
Perl, right?

anyway; many programmers are _not_ engineers. they may have learned
programming on their spare time, and therefore approach programming in a
different way. 

I'm not saying people without degrees are stupid, but programming is a lot
of things. It is an art, a science, a hobby, and engineering.

Sometimes an engineer is needed. Not an artist.

> Secondly;
> def hash_coerce(l):
>     d={}
>     map(lambda x,d=d: apply(lambda k,v,d=d:d.update({k:v}),
>                             string.split(x,'.')),
>         l)
>     return d
> map, lambda, apply, filter.  Obfuscation at your fingertips. :-) Using
> {}.update(), I believe it's possible to write programs that use only
> expressions; no statements.

Yes, of course. But I have a feeling many people don't use these
functions, unless they have taken a course on functional programming ;-)

It's often very useful to use these functions, but they provide solutions
not easily available in more popular programming languages, such as C and
Java. I refrain from mentioning C++ in the previous sentance, because C++
actually has those functions (except lambda), although many people don't
know about them.

But it's difficult to write nice code in Perl. At least I think so.. when
I start using references, everything blows up in my face.. Perhaps this is
my fault.

> >  - bad PR-agency[3]. until a year ago, I hadn't heard about Python.
> >    now I use it all the time.
> We need more cybernetic time-travelling marketing executives from the
> year 2038 to subdue perl and java proponents with their psychic
> freeze-rays.

Good idea! :)
> Failing that, a "banner campaign", where everybody who has a web page
> that uses python advertises it incessantly (this would hopefully
> include every Zope site too) might do some good...

Yes, well.. this will perhaps increase the popularirt of Python as a
web-language, but it is so much more.

A few years ago, someone asked me about the origins of the other "P"
language. He said: "It was created for web-programming.. right?"

I don't know what my point is here, but perhaps I just need some sleep.

> Unfortunately, one of the best features of the python community is
> that it seems to have a sane group of people in it who know multiple
> languages and will choose appropriate ones for the appropriate task.

The official language motto? "Python. For sane people."

> We need more rabid, unabashed evangelists. :-)

Those frigging sane people! Why can't they be more like the Java-people?!

> > [0]: no, I'm not referring to Pascal.. or Prolog. you know what I'm
> >      referring to, you little weasel <wink>
> Perhaps you mean you little *camel*

I stand corrected. :)
> > [1]: I like Lisp, but it *does* have a PR-problem.
> Lisp *IS* a PR-problem.  Lisp needs to change its name and shed some
> syntax before it's ever going to get 'mainstream' acceptance; the
> ideas in lisp are good, but too many cs students have been tortured
> with it ...

I'm afraid I haven't been tortured with it myself. I've been tortured with
Standard ML, Prolog, Java and stone-age C++ (pre ISO/IEC 14882:1998), but
not Lisp (I have encountered other languages, but I've just been slapped
hard by them.. not tortured).

I've tried learning Common Lisp, but I've never found mych use for it. I
did use it for some HTML-generation, and it worked great, but after a
while I got more interested in Perls fantastic modules (this was in my
pre-Python years).. and after a while I forgot about Lisp.. too bad,

> > [3]: I know there's no PR-agency. it's a joke. laugh.
> If there's no PR-agency, where are we going to get our nuclear-powered
> psychic cyborg executives?  Do you think microsoft has any extra?

Microsofts nuclear-powered psychic cyborg executives are probably leaving
the company like rats leaving a sinking ship, so we can probably get 'em

I-want-a-psychic-freeze-ray-too-ly y'rs, vr

More information about the Python-list mailing list