Back to Search Start Over

Expansion and evolution of the R programming language

Authors :
Timothy L. Staples
Source :
Royal Society Open Science, Vol 10, Iss 4 (2023)
Publication Year :
2023
Publisher :
The Royal Society, 2023.

Abstract

Languages change over time, driven by creation of new words and cultural pressure to optimize communication. Programming languages resemble written language but communicate primarily with computer hardware rather than a human audience. I tested whether there were detectable changes over time in use of R, a mature, open-source programming language used for scientific computing. Across 393 142 GitHub repositories published between 2014 and 2021, I extracted 143 409 288 R functions, programming ‘verbs’, pairing linguistic and ecological analyses to detect change to diversity and composition of functions used over time. I found the number of R functions in use increased and underwent substantial change, driven primarily by the popularity of the ‘tidyverse' collection of community-written extensions. I provide evidence that users can change the nature of programming languages, with patterns that match known processes from natural languages and genetic evolution. In R, there appear to be selective pressures for increased analytic complexity and R functions in decline that are not yet extinct (extinction debts). R's evolution towards the tidyverse may also represent the start of a division into two distinct dialects, which may impact the readability and continuity of analytic and scientific inquiries codified in R, as well as the language's future.

Details

Language :
English
ISSN :
20545703
Volume :
10
Issue :
4
Database :
Directory of Open Access Journals
Journal :
Royal Society Open Science
Publication Type :
Academic Journal
Accession number :
edsdoj.2e624037934c4e59a85525af93afec25
Document Type :
article
Full Text :
https://doi.org/10.1098/rsos.221550