map vs. list-comprehension

Tom Anderson twic at urchin.earth.li
Fri Jul 1 08:37:40 EDT 2005


On Thu, 30 Jun 2005, Roy Smith wrote:

> Terry Hancock <hancock at anansispaceworks.com> wrote:
>
>> One of the strengths of Python has been that the language itself is 
>> small (which it shares with C and (if I understand correctly, not being 
>> a lisp programmer?) Lisp), but with all the syntax enhancements going 
>> on, Python is getting pretty complicated. I have to wonder if new users 
>> won't begin to find it just as intimidating as Perl or other big 
>> languages.
>
> +1
>
> Even some of the relatively recent library enhancements have been kind 
> of complicated.  The logging module, for example, seems way over the 
> top.

Exactly the same thing happened with Java. if you look at the libraries 
that were in 1.1, they're very clean and simple (perhaps with the 
exception of AWT). 1.2 added a load of stuff that was much less 
well-designed (with the notable exception of the collections stuff, which 
is beautiful), and a lot of the extension packages that have been written 
since then are seriously crappy. My particular bugbear is JAI, the imaging 
library, the most gratuitously badly-designed library it has ever been my 
misfortune to work with. EJB is another great example.

I imagine the reason for this degradation has been the expansion of the 
java design team: it started off with James Gosling, who is an incredibly 
smart guy and an awesome engineer, and a relatively small team of crack 
troops; they were capable of writing good code, and really cared about 
doing that. Over the years, as it's grown, it's had to absorb a lot of 
people who don't have that combination of intelligence and good taste, and 
they've written a lot of crap. I suspect a trend away from gifted lone 
hackers and towards design by committee hasn't helped, either.

How this applies to python, where the BDFL is still very much at the helm, 
is not clear. I wonder if analogies to Linux, also a despotism, are more 
useful?

tom

-- 
In-jokes for out-casts



More information about the Python-list mailing list