Paul Graham: Revenge of the Nerds. “The Pointy-Haired boss […] (a) [] knows nothing whatsoever about technology, and (b) [] has very strong opinions about it.”
“If you look at these languages in order, Java, Perl, Python, […] Each one is progressively more like Lisp. Python copies even features that many Lisp hackers consider to be mistakes. You could translate simple Lisp programs into Python line for line. It’s 2002, and programming languages have almost caught up with 1958.”
“So the short explanation of why this 1950s language [Lisp] is not obsolete is that it was not technology but math, and math doesn’t get stale.” “Lisp started out powerful, and over the next twenty years got fast. So-called mainstream languages started out fast, and over the next forty years gradually got more powerful, until now the most advanced of them are fairly close to Lisp. Close, but they are still missing a few things.…”
PaulG and Raph corrected my criticism of PaulG’s Python criticism. (Thanks!) While building an accumulator cannot be done in Python, it does appear to be something of an edge case. He wants the function to have state, which is something traditionally left to objects. Raph: “In Python, you tend to use objects where in lexically scoped Lisp you would use closures. I’ve done some pretty edgy Python coding (including the implementation of a small lazy functional language), and have not felt the need for the construct that Paul describes. It is more of an edge case than a core language feature.”
PaulP has some comments over on the Lightweight Languages discussion list.
posted May 21, 2002 01:00 AM (Technology) #