Lisp mentality vs. Python mentality

John Yeung gallium.arsenide at gmail.com
Sat Apr 25 03:36:24 EDT 2009


On Apr 25, 2:06 am, Carl Banks <pavlovevide... at gmail.com> wrote:
> In answering the recent question by Mark Tarver, I think I finally hit
> on why Lisp programmers are the way they are (in particular, why they
> are often so hostile to the "There should only be one obvious way to
> do it" Zen).

I don't get that impression from Lisp programmers.  I suppose it's
only fair that I disclose (1) I admire Lisp, especially Scheme, (2) I
hardly know Lisp at all, and (3) I don't frequent any Lisp forums/
newsgroups/etc.

I do get the impression that Lispers tend to feel Lisp is superior to
all other languages, and I agree that in some ways it is.  I don't
think most Lispers' main objection to Python is about "only one
obvious way" but rather things like the limitations, compromises, and
impurities in the language.  Certainly compared to Scheme, Python
sacrifices a lot of purity for practicality.  (And I guess some fans
of Scheme would argue that Common Lisp does the same!)

Ultimately, Lisp is first and foremost academic (Scheme especially so)
while Python is first and foremost practical.  I think Paul Graham's
essays on Lisp exemplify the Lisp mentality.

The kind of Lisp programmer you go on to describe (escalating a simple
problem into a gigantic framework) sounds to me very much like plenty
of Python programmers.  A lot of beginners in this very newsgroup ask
"can I just do this simple thing?" and get responses like "well, that
does handle what you need it to, but what if your data is this?
Better add some checking or exception handling.  Also, you could make
it run faster by tripling the amount of code as follows..." etc.

John



More information about the Python-list mailing list