There are many hypotheses out there that Lisp lacks popularity for this or that flaw in the language or in the community. The problem with these hypotheses is that you can point to similar or bigger flaws in languages that have grown popular. If a language has good qualities, people will figure out ways around the problems. My hypothesis is that Lisp is unpopular for the exact same reason some of us love it: concise…
common lisp: (lambda (x) (+ x 1))
C#3 : x=> x + 1
ruby : { |x| x + 1 }
python : lambda x: x + 1
Haskell : \x -> x + 1
Just in terms of character count, CL is the longest of the lot.No, the problem with trying to get a lisp under your belt has alredy been mentioned. Compared to the alternatives;
- choosing an implementation is a research project (clisp? sbcl? allegro?) - documentation is weaker - libraries are harder to find and install (ASDF vs Rubygems, Python eggs, etc.) - emacs/slime is an investment to learn - examples are few and far between - the language itself (the words, not the punctuation) is inelegant (mapcar, setq, cdadr)
I've tried really hard to learn lisp, and it turns out that actually, while there may be some platonic lisp that IS great, actually programming common lisp, now, is a massive effort in struggling in the dark.