From: gremnebulin on 24 Sep 2009 12:58 http://www.aaronsw.com/weblog/rewritingreddit My friends over at reddit.com rewrote their site from Lisp to Python in the past week. It was pretty much done after one weekend. (Disclosure: They used my web.py library.) They knew Lisp (they wrote their whole site in it) and they knew Python (they rewrote their whole site in it) and yet they decided liked Python better for this project. The Python version had less code than ran faster and was far easier to read and maintain. The idea that there is something better than Lisp is apparently inconceivable to some, judging from comments on the reddit blog. The Lispers instead quickly set about trying to find the real reason behind the switch. One assumed it must have been divine intervention, since there seems to be no other reason for switching to an inferior language. Another figured something else must be going on: Could this be a lie? To throw off competition? Its not as though Paul Graham hasnt hinted at this tactic in his essays Another chimed in: I decided it was a prank. Another suggested the authors simply wanted more cut corners, hacks, and faked artisanship. These were, of course, extreme cases. Others assumed there must have been outside pressure. Either libraries or hiring new programmers I guess. Another concluded: some vc suit wants a maintainable-by-joe- programmer product. I hope he pays you millions. The Lisp newsgroup, comp.lang.lisp, was upset about the switch that theyre currently planning to write a competitor to reddit in Lisp, to show how right they are or something. The more sane argued along the lines of saying Lisps value lies in being able to create new linguistic constructs and that for something like a simple web app, this isnt necessary, since the constructs have been already built. But even this isnt true. web.py was built pretty much from scratch and uses all sorts of new linguistic constructs and even better these constructs have syntax that goes along with them and makes them reasonably readable. Sure, Python isnt Perl 6, so you cant add arbitrary syntax, but you can often find a clever way to get the job done.
From: John Slimick on 24 Sep 2009 18:13 On 2009-09-24, gremnebulin <peterdjones(a)yahoo.com> wrote: > http://www.aaronsw.com/weblog/rewritingreddit > > My friends over at reddit.com rewrote their site from Lisp to Python > in the past week. It was pretty much done after one weekend. > (Disclosure: They used my web.py library.) They knew Lisp (they wrote > their whole site in it) and they knew Python (they rewrote their whole > site in it) and yet they decided liked Python better for this project. > The Python version had less code than ran faster and was far easier to > read and maintain. > > The idea that there is something better than Lisp is apparently > inconceivable to some, judging from comments on the reddit blog. The > Lispers instead quickly set about trying to find the real reason > behind the switch. > I never saw LISP as a serious production language, but more as a conceptual tool to understand the problem and plan a solution. The attractiveness was that one did not get overawed by the syntactical concerns of an ALGOL derivative. Had there been a LISP2, the world of programming languages would probably been different. I emphasize over and over again to my CS students the necessity of visualization. Visualizing a solution in LISP should assist in implementing the solution whatever language one uses. Of course, LISP reliance on recursion, I think, aids in this visualization effort. I will say that when I saw that Python had lambda expressions, I felt that here was something that could do a lot of what LISP could do. Finally, that one can replace a LISP program with one written in a language developed 40 years later should be expected. The hard work was inventing LISP. I wonder if Python will have the continuity that LISP has; in 1985 or so I got my hands on an implementation of LISP, and to test it, I used the Hao Wang theorem prover from the LISP 1.55 manual. I needed to add exactly one function and it ran -- more than 20 years after publication. john slimick slimick(a)pitt.edu
From: Pascal J. Bourguignon on 24 Sep 2009 21:28 gremnebulin <peterdjones(a)yahoo.com> writes: > http://www.aaronsw.com/weblog/rewritingreddit > [...] > The Lisp newsgroup, comp.lang.lisp, was upset about the switch that > theyâre currently planning to write a competitor to reddit in Lisp, to > show how right they are or something. They're not planning to write a competitor, they did write several times a reddit clone in a few hours, proving some point. AFAIK nobody is planning anything more regarding Reddit, it's rather past history now. It wasn't the first team to rewrite their lisp program in a lesser language, probably won't be the last. -- __Pascal Bourguignon__
From: Pascal J. Bourguignon on 24 Sep 2009 21:31 John Slimick <jcs(a)cameron.upb.pitt.edu> writes: > Finally, that one can replace a LISP program with > one written in a language developed 40 years later > should be expected. The hard work was inventing > LISP. I wonder if Python will have the continuity > that LISP has; in 1985 or so I got my hands on > an implementation of LISP, and to test it, I > used the Hao Wang theorem prover from the LISP > 1.55 manual. I needed to add exactly one function > and it ran -- more than 20 years after publication. This is still true today with Common Lisp: http://www.informatimago.com/develop/lisp/small-cl-pgms/wang.html (I had to add about twenty lines of Common Lisp to be able to feed the original card deck, but that Wang theorem prover still runs). -- __Pascal Bourguignon__
From: Rui Maciel on 26 Sep 2009 15:14
John Slimick wrote: > I never saw LISP as a serious production language, AutoCAD has a considerable chunk of it written in lisp (well, a lisp dialect) and also relies on it for scripting. That is as serious as any production language can get. Rui Maciel |