Ask HN: Language inversion-- why do you think it exists?
The more I think about language inversion (the fact that the best languages, like Scala and Haskell, remain obscure; while C++ and Java remain mainstream) the more it puzzles me. Often the justification given for using Java is, "it has the best tooling". Well, that's completely reasonable. But how'd it get to that point? How did Java, despite the obvious deficiencies of the language, get the largest community in the first place?
It wasn't always this way, nor does it need to be so. In 1987, Lisp was the #3 language on the TIOBE index. Something happened that caused the state of language inversion we see now. I have a guess, but I'm kind of curious if there's someone out there who actually knows how we ended up in 15+ years of language inversion.
4 comments
[ 4.9 ms ] story [ 22.9 ms ] threadJava was intended to be a small language, (in comparison with languages that came earlier, like C++) with unsurprising semantics and syntax. Java does not have operator overloading, unsigned types or multiple inheritance (in the C++ sense), and these omissions were intentional- to make code easier to understand in isolation and easier to reason about. If you want a language which can express as much as possible in a line of code, Java fails miserably. On the other hand, programmers around the world have built and maintained enormous codebases in Java, suggesting that the "maintenance-oriented" features of the language may have been successful.
edit: Paraphrasing, James Gosling has said that the success of Java was to drag a large number of C++ programmers "halfway to Lisp" by cleaning up undefined behavior and introducing them to garbage collection.
Seibel says this:
'Though not about computers per se, The Wisdom of Crowds: Why the Many Are Smarter Than the Few and How Collective Wisdom Shapes Business, Economies, Societies, and Nations by James Surowiecki (Doubleday, 2004) contains an excellent answer to the question, "If Lisp's so great how come everybody isn't using it?" See the section on "Plank-Road Fever" starting on page 53.' http://www.gigamonkeys.com/book/conclusion-whats-next.html
A Google Books search for Surowiecki's book yields a preview with those few pages uncensored (just search for "plank-road fever") and a detailed discussion about "information cascade."