What makes any language suitable for scientific computing?
The most important goal is translating ideas into fast code and building on other people’s work. We are working on improving Clasp’s ability to generate fast code based on the excellent LLVM library and Clasp can expose C++/C/Fortran libraries to build on the work of others. I’ve programmed in many languages and Common Lisp is the best at expressing ideas. Every language gets translated into an abstract syntax tree on its way to native code, Lisp code is an abstract syntax tree. There is no programming concept that can’t be expressed compactly in Lisp, this is not true in other languages. You cannot yet express multiple dispatch functions, dynamic variables or Common Lisp style macros (a few CL features) compactly in R, Fortran, C++, or Python.
Why are R, Fortran, C++, or Python considered suitable for scientific computing?
It is the wrong question – those languages are just the languages that people started using and so they keep using them. It is not a choice most people make – it is inertia.
I choose Common Lisp.