 |
Wednesday, May 29, 2002 |
I've finally decided to put categories in my weblog. I resisted until now because I didn't want to have to decide in which category to put each post. However, I've realized that almost all of my posts have to do with theology or technology, and that people who might read my weblog could very possibly be interested in one but not the other. So, I've put all of the postings in May into the appropriate categories, but if you want to see them all together, just use the home page.
10:06:02 PM
|
|
If you read the article I referenced earlier, you will find that Paul Graham assumes that a more powerful, more succinct programming language means fewer lines of code, which means more productivity. In this article, Jarno Virtanen addresses that assumption.
My opinion is that there is some truth to this assumption, although I don't think that productivity gains are directly proportional to code size reduction. What I found in a Prolog programming project is that I wrote a lot fewer lines of code, but I spent more time thinking about each line. Now this isn't exactly a fair comparison, because I wasn't fluent in Prolog.
It is hard to judge the Lisp case because there are so few programmers proficient in Lisp, and Lisp is so foreign looking to those who don't know it. I must admit, however, that I have yet to find someone who I thought really understood Lisp, but did not consider it their favorite programming language.
One big barrier to entry for aspiring Lisp programmers is that the syntax is so uninviting. The strength of Lisp that code is data is also its biggest drawback. It cannot benefit from syntactic forms that make other languages more readable. Again, however, once a person gets used to reading Lisp code, maybe it is as readable as other languages. Since I'm not there, I can't comment on it.
12:03:22 PM
|
|
This is an interesting article about the power of Lisp. It has a little of the condescending Lisp Hacker tone, but also has a lot of food for thought. It is quite long, so I've included a number of clips to help you decide if it is worth your time.
If you look at these languages in order, Java, Perl, Python, you notice an interesting pattern. At least, you notice this pattern if you are a Lisp hacker. 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 is not obsolete is that it was not technology but math, and math doesn't get stale. The right thing to compare Lisp to is not 1950s hardware, but, say, the Quicksort algorithm, which was discovered in 1960 and is still the fastest general-purpose sort.
... Lisp looks strange not so much because it has a strange syntax as because it has no syntax; you express programs directly in the parse trees that get built behind the scenes when other languages are parsed, and these trees are made of lists, which are Lisp data structures.
... Macros (in the Lisp sense) are still, as far as I know, unique to Lisp. This is partly because in order to have macros you probably have to make your language look as strange as Lisp. It may also be because if you do add that final increment of power, you can no longer claim to have invented a new language, but only a new dialect of Lisp.
... the biggest win for languages like Lisp is ... where you need to write sophisticated programs to solve hard problems in the face of fierce competition. A good example is the airline fare search program that ITA Software licenses to Orbitz. These guys entered a market already dominated by two big, entrenched competitors, Travelocity and Expedia, and seem to have just humiliated them technologically. The core of ITA's application is a 200,000 line Common Lisp program that searches many orders of magnitude more possibilities than their competitors, who apparently are still using mainframe-era programming techniques.
... In server-based applications you can get away with using the most advanced technologies, and I think this is the main cause of what Jonathan Erickson calls the "programming language renaissance." This is why we even hear about new languages like Perl and Python. We're not hearing about these languages because people are using them to write Windows apps, but because people are using them on servers. And as software shifts off the desktop and onto servers (a future even Microsoft seems resigned to), there will be less and less pressure to use middle-of-the-road technologies.
... I'm not saying that you won't get a lot of pressure to use what are perceived as "standard" technologies. At Viaweb (now Yahoo Store), we raised some eyebrows among VCs and potential acquirers by using Lisp. But we also raised eyebrows by using generic Intel boxes as servers instead of "industrial strength" servers like Suns, for using a then-obscure open-source Unix variant called FreeBSD instead of a real commercial OS like Windows NT, for ignoring a supposed e-commerce standard called SET that no one now even remembers, and so on.
[ZopeNewbies]
9:50:21 AM
|
|
Although I'm not a professional writer, I relate to some of the reasons that Ed Cone gives for being a blogger.
Blogging is on the verge of becoming a mainstream fad, and that fad will be exploited and commercialized. But blogging will not fade away when its faddishness passes, because it is built on the powerful code of written language.
... Linking is part of blogging's appeal to me as a writer. I think of it writing in 3-D, an addition to the toolkit for written expression.
... As a professional, I see other benefits to blogging. I found when I added a weekly opinion column in a regional daily to my full-time job as a magazine journalist that writing more makes me a better writer. ... A weblog offers all that, minus the beer-money checks but with the possibility of a global audience.
... Unlike much of the stuff I get paid to write, it's my voice, singing my own song. I hope people read it, bookmark it, and create blogs of their own.
8:31:21 AM
|
|
© Copyright 2002 Gregory Graham.
|
|
|