Python's "only one way to do it" philosophy isn't good?
doug at alum.mit.edu
Wed Jun 20 02:16:28 CEST 2007
Steven D'Aprano <steve at REMOVE.THIS.cybersource.com.au> writes:
> On Tue, 19 Jun 2007 17:46:35 -0400, Douglas Alan wrote:
>> I think that most people who program in Scheme these days don't do it
>> to write practical software. They either do it to have fun, or for
>> academic purposes. On the other hand, most people who program in
>> Python are trying to get real work done. Which is precisely why I
>> program a lot in Python and very little in Scheme these days. It's
>> nice to have the batteries included.
> So, once you've succeeded in your campaign to make Python more like
> Scheme, what language will you use for getting real work done?
The problem with using Scheme for real work is that it doesn't come
with enough batteries included and there isn't a big enough of a
community behind it that uses it for real work.
Also, the Scheme standard has progressed at a terribly slow pace. I
have heard that the reason for this is due to the way that its
standardizing committees were set up.
One of the whole reasons to use Lisp is for its extensible syntax, but
it took more than a decade for macros to make it into the Scheme
standard. And without a standard macro system, there was no standard
library -- not even for doing OO programming.
> And how long will it take before Schemers start agitating for it to
> become more like Scheme?
> There is a huge gulf between the claim that Python needs to be more
> Scheme-like, and the fact that by your own admission you use Python,
> not Scheme, for real work. What benefit will be gained? The ability
> to "directly explore some pretty mind-bending stuff ... in a
> hackerly, brain-expanding/brain-teaser kind of way"?
Well, go to MIT and take SICP and then the graduate-level sequel to
the class, Adventures in Advanced Symbolic Programming, and then
you'll see what some of the advantages would be.
A good multimethod system, e.g., would make Python a significantly
nicer language for my purposes, for instance.
For the record, I have a huge problem with NIH-syndrome, and think
that every programming language in the world could learn a thing or
two from what other languages have gotten right.
More information about the Python-list