>for the vast majority of programmers, Lisp syntax is not easy
I suggest that learning Lisp's syntax is easier than learning C-like syntax. There is learning involved, however, and that undoubtedly keeps people from lisp. But s-expressions are the secret sauce; there is no modern lisp without them.
>installation and package management
This is basically a solved problem at this point. Clojure has both Lein and Boot to handle dependencies and building. CL has quicklisp (as easy as `(ql:quickload :my-system)` for installation) and asdf for "building" and system definition.
When it comes down to solving problems, I feel that interactive development (with SLIME), Quicklisp, and ASDF make me extremely productive, and the easy things are easy.
Lisp's syntax is indeed easier to learn, but the vast majority of programmers have made it clear that they DO NOT want to READ code in S-expression format. And you typically have to read more code than you write.
I created 3 layered notations to keep Lisp's capabilities (including macros and homoiconicity) while making it easier for normal programmers to read. Instead of "getting rid" of S-expressions, I think adding just a few standard abbreviations to the Lisp reader makes Lisp more acceptable to more developers. See:
https://sourceforge.net/projects/readable/
>the vast majority of programmers have made it clear that they DO NOT want to READ code in S-expression format
I don't think this is true. I don't know of many people (who actually use Lisp -- meaning they took the time to read a book and build a smallish, mostly complete project) who are actually bothered by reading s-expressions. They do take some getting used to, but I really don't see the problem. s-expressions scare newcomers, but eventually it isn't an issue. It's just different.
The vast majority of programmers make it clear that they don't want to use anything but the one of the several popular languages du jour, regardless of what that language looks like, and of what any other language looks like.
There is hardly anything familiar to complete neophytes in any programming language. Beyond simple arithmetic expressions like a * b + c (where the use of asterisk for multiplication is already unfamiliar) and function notation f(x, y), everything else is new.
Some languages with awful syntax have enjoyed popularity.
If you clone the salient features of a popular language to make a new language, you will not automatically end up with a popular language. "Off brand" versions of popular languages largely languish in unpopularity.
Lisp developers haven't adopted those syntax variants. There are some Lisp derived languages with non s-expression syntax (Logo, Dylan, RLISP, SKILL, ...) but the adoption is limited among Lisp programmers.
I suggest that learning Lisp's syntax is easier than learning C-like syntax. There is learning involved, however, and that undoubtedly keeps people from lisp. But s-expressions are the secret sauce; there is no modern lisp without them.
>installation and package management
This is basically a solved problem at this point. Clojure has both Lein and Boot to handle dependencies and building. CL has quicklisp (as easy as `(ql:quickload :my-system)` for installation) and asdf for "building" and system definition.
When it comes down to solving problems, I feel that interactive development (with SLIME), Quicklisp, and ASDF make me extremely productive, and the easy things are easy.