Abstract
R is a dynamic language for statistical computing that combines lazy functional features and object-oriented programming. This rather unlikely linguistic cocktail would probably never have been prepared by computer scientists, yet the language has become surprisingly popular. With millions of lines of R code available in repositories, we have an opportunity to evaluate the fundamental choices underlying the R language design. Using a combination of static and dynamic program analysis we assess the success of different language features.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Becker, R.A., Chambers, J.M., Wilks, A.R.: The New S Language. Chapman and Hall (1988)
Bobrow, D.G., Kahn, K.M., Kiczales, G., Masinter, L., Stefik, M., Zdybel, F.: In: Conference on Object-Oriented Programming, Languages and Applications, OOPSLA (1986)
Chambers, J.M.: Software for Data Analysis: Programming with R. Springer (2008)
Chambers, J.M., Hastie, T.J.: Statistical Models in S. Chapman & Hall (1992)
Ducournau, R.: Coloring, a Versatile Technique for Implementing Object-Oriented Languages. Software: Practice and Experience 41(6), 627–659 (2011)
Kent Dybvig, R.: The Scheme Programming Language. MIT Press (2009)
Gentleman, R., et al. (eds.): Bioinformatics and Computational Biology Solutions Using R and Bioconductor. Statistics for Biology and Health. Springer (2005)
Gentleman, R., Ihaka, R.: Lexical scope and statistical computing. Journal of Computational and Graphical Statistics 9, 491–508 (2000)
Hudak, P., Hughes, J., Peyton Jones, S., Wadler, P.: A history of Haskell: being lazy with class. In: Conference on History of programming languages, HOPL (2007)
Ihaka, R., Gentleman, R.: R: A language for data analysis and graphics. Journal of Computational and Graphical Statistics 5(3), 299–314 (1996)
Keele, L.: Semiparametric Regression for the Social Sciences. Wiley (2008)
Kiczales, G., Rivieres, J.D., Bobrow, D.G.: The Art of the Metabobject Protocol: The Art of the Metaobject Protocol. MIT Press (1991)
Mitchell, E.G.: Functional programming through deep time: modeling the first complex ecosystems on earth. In: Conference on Functional Programming, ICFP (2011)
Parr, T., Fisher, K.: Ll(*): the foundation of the Antlr parser generator. In: Conference on Programming Language Design and Implementation, PLDI (2011)
R Development Core Team: R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing (2011)
R Development Core Team: The R language definition. R Foundation for Statistical Computing, http://cran.r-project.org/doc/manuals/R-lang.html
Richards, G., Lesbrene, S., Burg, B., Vitek, J.: An analysis of the dynamic behavior of JavaScript programs. In: Conference on Programming Language Design and Implementation, PLDI (2010)
Smith, D.: The R ecosystem. In: The R User Conference 2011 (August 2011)
Steele Jr., G.L.: Common LISP: the language, 2nd edn. Digital Press (1990)
Ungar, D., Smith, R.B.: Self: The power of simplicity. In: Conference on Object-Oriented Programming, Languages and Applications, OOPSLA (1987)
Wright, A.K., Felleisen, M.: A syntactic approach to type soundness. Information and Computation 115, 38–94 (1992)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Morandat, F., Hill, B., Osvald, L., Vitek, J. (2012). Evaluating the Design of the R Language. In: Noble, J. (eds) ECOOP 2012 – Object-Oriented Programming. ECOOP 2012. Lecture Notes in Computer Science, vol 7313. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-31057-7_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-31057-7_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-31056-0
Online ISBN: 978-3-642-31057-7
eBook Packages: Computer ScienceComputer Science (R0)