Comment by znpy

7 years ago

Because as a language it has some nice properties that make it conceptually easy to do otherwise complex.

The sad truth is that beside that, it’s severely lacking in real-world-usable libraries, there are a number of implementations with none of them gaining a majority share if users and, last but not the least, a kind of distance from the operating system that make it non-obvious to reason about the usual stuff (“ports” instead fo file descriptors, vm memory dump to disk as a form of binary executable generation, etc etc).

So lisp has some cool things but will never likely become a mainstream language, hence the perpetual hype.

>there are a number of implementations with none of them gaining a majority share

SBCL has the majority share. But it doesn't matter, since ANSI Common Lisp is a standard and my code runs on many CL implementations with no changes.

>a kind of distance from the operating system

Citation needed. A bit puzzling to say that when some CL implementations have fantastically easy FFI features (CCL, ECL, CLISP).

>“ports” instead fo file descriptors

We don't have this. Streams are streams, like in any other typical language. File paths are represented by... Pathnames (data type).

>vm memory dump to disk as a form of binary executable generation

1. The dump is part of the generated executable

2. Now compare to most dynamically typed languages: they can't generate an executable nor compile to machine lang.

3. "Memory dump to disk as a form of binary executable" is only true of the Common Lisp implementations that are able to save the image. ECL, for example, doesn't do that. It compiles to C and C gets compiled to Exe.

4. Being able to save and restore images is one of the best features of CL (and Smalltalk as well)

>So lisp has some cool things but will never likely become a mainstream language

You need to review your history, since Lisp was a mainstream language in the past. To put an example, it was #3 in the TIOBE index for 1989, #5 for 1994.

Do you mean majority share between CL implementations or Lisp like languages?

If the former, I don't have the exact numbers but SBCL is practically the de facto standard with about ~80% of library pulls from QuickLisp.