A really interesting article was just published in Computing and Software Science titled "The Next 7000 Programming Languages" (a play on Peter J. Landin's classic "The Next 700 Programming Languages", published in 1966).
The paper draws an analogy between popular programming languages and various species of plants trying to survive on a given patch of land. The article:
likens climate change -- an external driving force which affects the diversity and suitability of certain species of plants -- to multi-core processors, which have recently filled a similar role for programming languages, encouraging multi-threaded programs and map-reduce pipelines
views supported libraries, packages, and frameworks as symbiotes -- other plants and animals which help a given species to survive
discusses how programming languages, like plants, fill particular niches, and although there may be languages that perform well in multiple environments (Scala is given as an example), as a general rule, there are no "universal" programming languages which work well in all niches
If you're interested at all in the history and development of programming languages, or where they're headed in the future, I definitely recommend this article. If you do read it, come back here and let's get a discussion going!