I can't think of a title for this post. Anyway, it's about Lisp. :)

Lisp: The Golden Age Isn't Coming Back, Let's Welcome a Bright Future: Interesting article that is somewhat relevant to me right now, considering what I'm doing (i.e. studying Chicken Scheme).

So, yeah, there really isn't such a thing as "one Lisp". There is "Lisp the concept", and there are several standards (Common Lisp and Scheme being the most widely used), and many implementations, varying from very mature to experimental. This situation causes problems that other languages usually don't have, like fragmentation, incompatible code bases, and lack to clarity due to too many choices. (Compare this to e.g. Python: you just download the latest version at www.python.org, install it, and you're good to go. But you cannot go to, say, www.lisp.com, and download "the Lisp that everybody uses". There are just too many variants to choose from.)

In fact, you could say that Lisp isn't really a language, but a way to implement programming language concepts. You could write an implementation, interpreted or compiled or both, using separate namespaces for functions and variables or one, using dynamic or static typing, using eager or lazy evaluation, etc, and whatever you come up with could still be called "Lisp". Scheme is "a Lisp". So are Goo and Arc. The terminology can be confusing sometimes because people often use the term "Lisp" to refer to Common Lisp (sometimes in contrast to other Lisp variants like Scheme).

What the article kind of hints at, but doesn't really go into, is that Lisp has social problems. If that sounds weird, just take a look at comp.lang.lisp to see what I mean. Or, if you just want the summary, see this blog. Also see e.g. here, here and here. This seems to be mostly true for the Common Lisp community; on average, Schemers seem to have a different attitude, and I found people on the chicken-users mailing list to be friendly and helpful in general.

Comments are closed.