This is pretty much what I was going to say also.
1) Certain problem domains are better served via different dialects. There are problems for which Prolog-style languages are best and problems for which Algol-style languages are best. And there are many many problems best serviced by the style of one of the first high-level languages: LISP.
2) At their core, most of the languages decompose to the same core concepts such that I almost wish we would start referring to them as dialects instead of languages. At least for syntax, C, Python, Rust, Go have more in common than in opposition.
3) It's a good thing there are so many languages though it doesn't always seem that way day-to-day. It's a form of natural selection and evolution. Human progress is not linear. It's messy, has lots of false-starts, and backtracks often.
(post is archived)