| Many languages are slow. (Or, more concretely, many languages have only slow implementations.) If C or Fortran interfaces are easy, speeding up the language shouldn't necessarily be a priority. But that doesn't make the language itself fast. As for why this can matter: a big part of my job is designing and prototyping new statistical estimators. "Prototyping" means running them through lots of simulations to explore their properties in small samples. My two options in R are: 1. Program up the estimator in pure R, in which case the simulations can take days to weeks to complete. 2. Program up the estimator in C and write an R interface, in which case the simulations will run 10 to 100 times faster. (Depending on the exact operations used.) The code will take much longer to adjust if I need to change the estimator, which happens frequently, and debugging will take longer. 3. Program up the estimator and simulations in pure C, making it still faster but much more brittle. This is a fairly iterative process -- I'll typically discover errors in the math as I run the simulations or after I've run them, or the simulations will reveal unappealing properties that need to be fixed. But once I have "good" estimator and "good" simulations, I write it up in a paper and am done with it. (Gross simplification of my actual job, but accurate enough.) So the distinction between "R's speed" and "C's speed" very much matters, and if R were actually as fast as C it would make my life much easier. Of course, for people who are "coding in R" by running data analysis in a script the distinction doesn't matter. But I already said that in the comment you're replying to. |