http://www.paulgraham.com/avg.html
I think that answers your question behind the question. Then read the whole essay. It's good.
I dare say his essays are about starting up in general, and there is no secret plan to convert users into using Lisp. Every week on YCombinator Startup News, somebody asks about learning Lisp to do a web app, when there are way more other things to worry about than the language. Use something you want to use every day, not just in theory because someone else did. I'd learn an unknown language if I was at a startup that used it every day, but otherwise, I would default to using a web framework that I have already used in the past.
My conclusion is that if you're creating a web application using a web framework in any language you find interesting at the moment, go for it. Because that's exactly what Paul did. It just happened to be Lisp that he was an expert at, but it could have been any other exciting technology.
Whether Paul would use Lisp today or not on a new project is irrelevant as far as your plate is concerned. He could use Lisp, but it wouldn't mean that there aren't other good alternatives. And if he did use a language other than Lisp, maybe it would be so because he would want to learn web framework since he wouldn't be writing Lisp books any more, but Lisp may still be something he would normally use more often.
I think this is a great question.
The point is that he thought at the time, and still (probably) thinks, that Lisp is language superior in power. As far as I know, no other language has eclipsed it, so the answer hasn't changed.
At least, that's the argument that has compelled me to re-visit it (after learning some Scheme in undergrad).
For example, the fact that 'foo creates the symbol foo if it doesn't exist is undisciplined. That means if you try to reference something in a certain package, then find you didn't import that package yet, then try to import the package, it will fail. The reason it fails is because you've already created 'foo, so it can't import 'foo.
That's just one example. Lisp is the most powerful code abstraction, but it needs discipline to succeed.
Left as an exercise for the reader: Are there any languages that have become popular despite not having discipline built into the language? If so, then it's not a prerequisite for popularity.
A piano concert's quality depends much more on the pianist than the piano, but you'll notice the pros don't give concerts on uprights.
If you have a choice of several languages, it is, all other things being equal, a mistake to program in anything but the most powerful one.
I'm learning Lisp right now. Reading the Practical Common Lisk on the web http://www.gigamonkeys.com/book/ until my dead-tree copy arrives (I'm also waiting for my copy of ANSI Common Lisp. Paul, if I manage to get to the face-to-face interview on Boston for that Y-Combinator round, do you mind if I ask you to sign to book? pleeease ^_^), and so I currently better building a website with Perl+Catalyst+MySQL than with Lisp. Probably when I get more confidence with Lisp it will change.
So, although Paul is a great writter and a really great hacker his answer to that concrete question has not really a lot of value. And, I've previously said I bet a beer-token that the answer will be something that evaluates to true.
http://www.paulgraham.com/accgen.html
In my very biased and unlearned view the simplest readable versions are Javascript and Lua. And Lua has server side libraries for CGI and SQL and other goodies (search for Xavante on the net). Just a tip for those poking around for readable and clean language alternatives. And Lua just got up to position 18 on the Tiobe index this month.
Hackers and Paiter page 161, The hundred years language:
"How far will this flattening of data structures go? I can think of possibilities that shock even me, with my consiously broadened mind. Will we get rid of arrays for example? After all, they're just a subset of hash tables where the keys are vectors of integers."
Lua does exactly this. And is quite efficient anyway.
Anders Holtsberg
The Python version listed there doesn't actually meet the requirement (it doesn't return a function, it returns a class instance, and it keeps modifying n every time it's called).
Corrected version:
def foo(n): return lambda (i): n+i
Which is essentially identical to the Common Lisp version.
def acc(n):
while True:
n += yield nBTW, generators are non-callable.
But the idea is that what you get out of lisp is an order of magnitude more power than other battle-tested ones, right? I ask this in seriousness, not to provoke a flame war.
[edit: I'm not entirely sure what people mean when they say web framework, so apologies if Hunchentoot wasn't what you meant.]
Building a web application doesn't require a framework; it does require a set of libraries to handle talking over http, generating HTML and often talking to a database. Since most frameworks include these, some people may confuse the two. A framework is really just a half-done bottom-up application, which is pretty useful when it matches the kind of application you're building and pretty useless otherwise.