Why is Python popular, while Lisp and Scheme aren't?
Johannes Grødem
johs+n at ifi.uio.no
Sat Nov 9 09:59:47 EST 2002
* Carl Banks <imbosol at vt.edu>:
> Python represents logical nesting the same way human read it, by
> indentation. Lisp repesents all nesting with parentheses, [...]
When you program in Lisp, you (your editor) indents blocks for you,
which makes it easy to see block structure. Noone actually manually
count parentheses. (All sane editors support paren-matching.)
> Python uses infix notation for math. Most humans were brought up to
> understand infix.
Because Lisp has a powerful macro system, it is actually possible to
have an infix-macro, which lets you use infix-syntax. And you can
write macros to support all sorts of weird syntax, if you want.
> The reason Python programmers often don't have to think about it
> is most of the time it's intuitive. [Evaluation order.]
And when is it not intuitive in Lisp? Sure, you can write macros that
evaluate arguments in unintuitive order, but why would you? For
functions, arguments are evaluated left-to-right, just as you would
expect.
Maybe you're confusing Lisp with Scheme?
--
Johannes Grødem <OpenPGP: 5055654C>
More information about the Python-list
mailing list