Why is Python popular, while Lisp and Scheme aren't?

Robin Munn rmunn at pobox.com
Sat Nov 9 11:47:36 EST 2002


On Sat, 09 Nov 2002 at 13:21 GMT, Michael Hudson <mwh at python.net> wrote:
> oleg_inconnu at myrealbox.com (Oleg) writes:
>> [ ... ] I couldn't help but
>> wonder why Python is popular, while Common Lisp and Scheme aren't?
> 
> For Common Lisp, at least, my guess is: a bizarre mix of history, bad
> teaching, things that "everyone knows" that are plain wrong, a fright
> reaction on seeing syntax you're not used to[1] and tendency to ignore
> the rest of the world.
[ ... ]
> [1] How many people went "significant indentation! ugh!"?

I think I was weirded out by Python's indentation like just about
everyone else who was coming from something like C -- but I quickly grew
used to it.

Lisp's parentheses, OTOH, I never got used to. Having to constantly stop
and count parentheses to remember where I was in my program structure
quickly went from novel to irritating and never recovered. Most of the
other students in my CS class agreed with me about the Lots of
Irritating Superfluous Parentheses.

The only thing that could make me at all comfortable with using Lisp
would be if I had an editor that would color-highlight not keywords or
strings, as color-highlighting usually goes, but levels of parenthesis
indentation. So that this:

(a (b (c (d e))))

would have 'a' in one color, 'b' in a second, 'c' in a third, and 'd e'
in a fourth.

The prefix notation doesn't bother me overly much, but the parentheses
kill it for me. Of course, this might just be memory from several years
ago...

Nope. Just downloaded the w3 browser and looked at the source. Still
Lots of Parentheses, and still Irritating. I'm willing to grant that
they're not Superfluous, but I still think they're Silly.

So that, in a nutshell, is why I don't like Lisp: the syntax gets in the
way of my scanning the code quickly. Counting parentheses takes far too
long. Whereas with Python I can give the code a once-over with the old
Mark I eyeball and get a pretty good idea of the code structure.

-- 
Robin Munn <rmunn at pobox.com>
http://www.rmunn.com/
PGP key ID: 0x6AFB6838    50FF 2478 CFFB 081A 8338  54F7 845D ACFD 6AFB 6838



More information about the Python-list mailing list