This is basic question comes to Architects many times.
I consider following factors to choose a programming language.
1. Performance (High speed, low memory, low CPU utilization)
2. Maintainability (New team should be able to understand and fix issues)
3. Durability (Project should survive minimum 10 to 20 years. This is for backend projects. Not for UI development.)
4. Should work on Unix / Linux
5. Should have good documentation and support on internet
6. Preferably Open Source or low license fees.
7. Availability and affordability of resources (People, Software, Hardware, IDEs, Books, ..etc).
8. Proven track record or good team behind that language development.
Case Study: Which one I choose for backend development from Clojure, Groovy, JRuby, Java, Jython, Scala, Xtend, Haskell ?
My choices are as follows
Text processing: PERL
Web services and other framework: Spring
UI: JQuery, JSP, Displaytag
Conclusion: Success of project depends on language we choose + other factors.