In theory, any modern programming language could be used for almost any task. Why, then, are there so many? It may be interesting to see if, at some point, some language begins to take over the niches. At some point, there may exist a universal translator for programming languages, so everyone can read and write any code in their own preferred language. For now, though, it seems that one reason there are so many programming languages is that their respective communities like to focus on different questions.
Here are some of the questions that seem to occupy certain programming language communities:
- Ruby: What is the best way to do and think about development?
- Python: How can we make our code as readable as possible?
- Java: How can we structure our code to work together at enterprise scale?
- Clojure: How can we rethink what data is and how our software relates to it?
Do you agree that these questions are what these programming languages' communities tend to focus on? What are some others?
Do you think programming will converge on a single language or interoperability paradigm in the future?