Python syntax in Lisp and Scheme
Andrew Dalke
adalke at mindspring.com
Wed Oct 8 22:29:58 EDT 2003
More information about the Python-list mailing list
Wed Oct 8 22:29:58 EDT 2003
- Previous message (by thread): Python syntax in Lisp and Scheme
- Next message (by thread): Python syntax in Lisp and Scheme
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Pascal Costanza: > He provides more information at http://www.paulgraham.com/icad.html The page I referenced (http://www.paulgraham.com/power.html) appears to be a refinement of some ideas on that page. It's somewhat funny that on the page I mentioned he says: So any language comparison where you have to meet a predefined spec is testing slightly the wrong thing. while on the page you reference he gives a comparison between various languages based on a predefined spec. And he uses as his test case something I've not needed. By comparison, following Kenny Tilton's lead, the Bagley Shootout Page suggests that in an aggregate of small but non-trivial problems, OCaml is the most succinct language, with Python roughly comparable to Lisp/Scheme. I have run across his pages before, and have a hard time symphathizing with his view of things. For example, the start of the icad essay mentions that Lisp is already "kind of unusual" compared to C because it includes a full interpreter. But effectively all Python programs shipped include a full interpreter as well, and many give access to that interpreter, so I don't see what's unusual about it. Ditto for Tcl apps. Even some of my command-line perl apps included a way to pass in perl code on the command line, as for a search filter. The phrase "they had hard-headed engineering reasons for making the syntax look so strange." reminds me of the statement "better first rate salespeople and second rate engineers than second rate salespeople and first rate engineers" (and better first rate both). That's saying *nothing* about the languages; it's saying that his viewpoint seems to exclude the idea that there are hard-headed non-engineering reasons for doing things." Consider one of those "hard-headed engineering reasons", at http://www.paulgraham.com/popular.html It has sometimes been said that Lisp should use first and rest instead of car and cdr, because it would make programs easier to read. Maybe for the first couple hours. But a hacker can learn quickly enough that car means the first element of a list and cdr means the rest. Using first and rest means 50% more typing. And they are also different lengths, meaning that the arguments won't line up when they're called, That to me is a solid case of post hoc ergo proper. The words "1st" and "rst" are equally as short and easier to memorize. And if terseness were very important, then what about using "." for car and ">" for cdr? No, the reason is that that's the way it started and it will stay that way because of network effects -- is that a solid engineering reason? Well, it depends, but my guess is that he wouldn't weight strongly the impact of social behaviours as part of good engineering. I do. And entirely off the topic of programming, his essay at http://www.paulgraham.com/nerds.html has little resonance with my memory of high school. Andrew dalke at dalkescientific.com
- Previous message (by thread): Python syntax in Lisp and Scheme
- Next message (by thread): Python syntax in Lisp and Scheme
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list