Saturday, September 08, 2007

Why Lisp?

I've tried to answer the question before by giving a list of the features of lisp. But I don't think that language choices are entirely made on features. There is more to it, and in the end I don't think there is a one language to rule them all.

And that is a good thing, in exactly the same way as it is good that there is more than one language in the world. There have been numerous attempts to design a universal language, which the authors hoped would replace all other languages and become the way humans communicate.

All of these attempts have failed not because the designed languages where missing important features but because humans thrive on diversity. We want to speak different languages. And Coders want to code in different languages. This simple statement explains why such passionate flame wars erupt over trivial matters such as how statements should be delimited.

So to Answer my own question why lisp? Because it is different. Not just slightly different, such as Java vs C++ but entirely different. The fact that it is different is what attracted me to Lisp in the fist place. I simply decided that I wanted to learn something which was different. Once I started I found that Lisp did have a lot of cool features.

Using a completly different langauge is a refreshing change and makes you think about programming in a different way. But that's something to discuss another day, I said I wasn't going to decent into a feature list and I wont.