Commonly-used names in the Python standard library
Steven D'Aprano
steve+comp.lang.python at pearwood.info
Fri Feb 21 04:12:16 EST 2014
On Fri, 21 Feb 2014 09:21:56 +0200, Marko Rauhamaa wrote:
> I don't hear Lispers or C programmers complaining.
Lisp is not a popular language. Despite being more powerful, more
efficient, and a lot older, I expect that there are far fewer people who
know Lisp (let alone use it regularly) than Python. I wouldn't go so far
as to say that the Lisp/Scheme family of languages is moribund, but they
are certainly niche.
And by the way, that niche includes some of the best and brightest
developers. (Some of whom are too clever by half, but that's another
story.) Merely mediocre programmers don't learn Lisp. So if you take the
smartest 0.1% of programmers, and give them a language that lets them
chainsaw their leg off, they won't complain, they're just keep their leg
out of the way. But if you take the average 50% programmers, and give
them a language that lets them chainsaw their leg off, there will be a
lot of one-legged programmers.
I'm really glad that Lisp exists, but I don't want Python to aspire to be
Lisp. In the same way, I am very fond of Forth. Forth too lets you re-
define *everything* about the language, including creating new flow-
control commands. I love that language. But there is a very good reason
why there are a thousand Python coders for every one Forth coder, and it
isn't the stack or the reverse Polish notation.
As for C, there are a lot of mediocre C programmers writing mediocre C
programs filled with buffer overflows, null-pointer bugs and all sorts of
other problems. And they don't complain about those either. Because the
smart ones know how not to chainsaw their leg off (but even they still
make mistakes, which is why there are periodic security vulnerabilities
even in code written by people of the calibre of Linus Torvalds and the
Linux kernel devs), or have moved to another language and write the bare
minimum of code in C only when they really need to.
> Yes, you can shoot
> yourself in the foot with macro trickery, but macros can greatly enhance
> code readability
Or greatly destroy it, which is precisely the reason why Python doesn't
have a macro system. When Guido van Rossum reads Python code, he wants it
to look like Python code, not some arbitrary custom-built language.
--
Steven
More information about the Python-list
mailing list