Robertl Read

Robert L. Read is a programmer, computer scientist, Esperantist, and father.

I have a blog/community: http://robertlread.net

I am the author of the free essay "How to be a Programmer".

I am currently working on a project to facilitate the formation of human consensus.

I am using LISP to do it, and basically buy the arguments the PaulGraham presented in "BeatingTheAverages", which unfortunately makes me a SmugLispWeenie.

I am putting some time into helping smart 5th grades build a wiki; you can find a link at http://robertlread.net/. It's going pretty well, I think - thanks to the wiki inventor (WardCunningham).

I've now been using LISP for about 8 months to build my web-based consensus management system. I am more convinced than ever that LISP is vastly superior to Java, which I used professionally for that last 5 years. The main reason seems to me much simpler than the high-falutin' talk that Smug Lisp Weenies like myself are accused of: I've got a complete working prototype of a multi-tier web application that does something interesting (perhaps very interesting) in just under 7000 lines of code. Furthermore, that includes about 25% internal comments. It is true that to get that concision, I have to use a small number of macros, and I have to use first-class functions all over the place. If I had to write that in Java, I'm pretty sure it would take 25,000 lines, or more.

Although simple, I suggest this lines-of-code metric as a very important one. I don't think my code is particularly hard to understand - but it is deep; I hope it is deep; I don't have enough time to spend a lot of lines of code doing something unimportant. More importantly, I can't afford to maintain 100K lines of code, when I can get by with 10K.

I wish that we could devote the large amount of energy it would require to scientifically analyzing the productivity of the same person programming in Java vs. LISP. I suspect LISP would crush Java, especially if the project is hard. But the only real way to know is to test it via a clean-room experiment of some kind. This would take many days of work, and have to be repeated quite a bit to get a good statistical picture. However, we do things like that when new drugs are tested; my understanding is that millions of dollars are spent on drug testing in clinical trials. If we put a million dollars into it, we could keep turn this religious argument about languages into a something we could really learn from.


CategoryHomePage


EditText of this page (last edited November 24, 2012) or FindPage with title or text search