Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm replying to my own comment because the other commenters have made such good points and I'm responding to several at once.

I wish that in my rather long career that I had a chance to work on a big project using Lisp. How else can one really make judgements about the suitability of a programming language. Simple programs and personal projects don't give one a feeling for the value of many important and perhaps subtle language features that have significance at a scale where we all all strive to improve our tools. So I can't speak with the authority of the other commenters, and I relish the comments of those that have had industrial level experience with Lisp (see hga’s comments).

However, I have read books on Lisp, dozens of them. I've worked in the group that implemented a commercial Lisp at Texas Instruments. I've owned a copy of the InterLisp reference manual. I've programmed in Lisp before Common Lisp existed. I used Lisp in a classes taught by Patrick Winston and used Lisp and lambda calculus to understand CLU's semantics while working on my undergrad thesis with Barbra Liskov. I took the class before SICP was a book; I’ve still got the mimeographed notes. I not a Lisp expert, but I'm not even close to the troll end of the scale either. Of course I'm familiar with Blub and Phil Grahamm’s other essays, everyone could benefit from reading these. He explains one of Lisp’s great benefits: it makes you a better programmer. I know it has done this for me; I was wrong to suggest that Lisp hasn’t triumphed (see dman’s comments).

Once upon a time I tried to introduce Lisp as an important part of our system architecture in my company, but the other engineers objected ("too many parentheses"!!). To avoid outright mutiny I developed an alternative design that didn't need a Lisp interpreter. Perhaps I should have not given in. (see mrrottenkolber’s comments).

Not being an expert on Lisp, I’ve tried to figure out how much energy to put into further developing my skills there. Should I direct companies that I run or consult for to use it? Or should I tell them to use something else? This is the dilemma that I face, and this is why these discussions interest me. As jules notes, many of Lisp’s contributions to programming languages have now made their way into the most popular languages today.



"Too many parentheses" is a cop out for "This language is too far out of my comfort zone." And I think that is why Lisp is not as successful as other languages.

I also think the almost mythical status of Lisp is also a hindrance. Lisp couldn't possibly live up all the hype. This leads to a backlash of common complaints ("not enough libraries", "smug lisp weenies", "bad culture", "no ide", "prefix notation is unreadable") when it does not live up to the hype or worse the user fails to grok lisp. The mythical status also leads to a higher percentage of trolls.

Back in the day, most programming was from scratch or at most trading bits of code. Lisp was great in this environment. Coding from scratch was quicker than other languages and due to its dynamic nature morphing someone else's lisp code was easy. Today most programming is patching together libraries or tools. Scripting languages are ideal for this. No one "steals" code any more, they "steal" whole libraries.


"Too many parentheses" :-)

Oh for the damage I've seen C programs cause due to "not enough parentheses".

Not really the main point, but there is a certain amount of irony there.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: