Saturday, August 04, 2007

News.YC's web server

Paul Graham's known for his outspoken and often contrarian views. But to his credit, he has a few successes to show for his approach. After Viaweb and YCombinator, he's working on Arc, a Lisp style programming language. He's dogfooding it with news.yc , a forum to discuss startups. Just today someone asked him which web server he uses. That found a pithy reply:
this one:

(def serve ((o port 8080))
(nil! quitsrv*)
(ensure-dir logdir*)
(let s (open-socket port)
(prn "ready to serve port " port) (flushout)
(= currsock* s)
(after (while (no quitsrv*)
(if breaksrv*
(handle-request s)
(errsafe (handle-request s))))
(close s)
(prn "quit server"))))

No comments: