On the Design, Implementation, and Use of Laziness in R
Identifikátory výsledku
Kód výsledku v IS VaVaI
<a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F68407700%3A21240%2F19%3A00340366" target="_blank" >RIV/68407700:21240/19:00340366 - isvavai.cz</a>
Výsledek na webu
<a href="http://dx.doi.org/10.1145/3360579" target="_blank" >http://dx.doi.org/10.1145/3360579</a>
DOI - Digital Object Identifier
<a href="http://dx.doi.org/10.1145/3360579" target="_blank" >10.1145/3360579</a>
Alternativní jazyky
Jazyk výsledku
angličtina
Název v původním jazyce
On the Design, Implementation, and Use of Laziness in R
Popis výsledku v původním jazyce
The R programming language has been lazy for over twenty-five years. This paper presents a review of the design and implementation of call-by-need in R, and a data-driven study of how generations of programmers have put laziness to use in their code. We analyze 16,707 packages and observe the creation of 270.9 B promises. Our data suggests that there is little supporting evidence to assert that programmers use laziness to avoid unnecessary computation or to operate over infinite data structures. For the most part R code appears to have been written without reliance on, and in many cases even knowledge of, delayed argument evaluation. The only significant exception is a small number of packages which leverage call-by-need for meta-programming.
Název v anglickém jazyce
On the Design, Implementation, and Use of Laziness in R
Popis výsledku anglicky
The R programming language has been lazy for over twenty-five years. This paper presents a review of the design and implementation of call-by-need in R, and a data-driven study of how generations of programmers have put laziness to use in their code. We analyze 16,707 packages and observe the creation of 270.9 B promises. Our data suggests that there is little supporting evidence to assert that programmers use laziness to avoid unnecessary computation or to operate over infinite data structures. For the most part R code appears to have been written without reliance on, and in many cases even knowledge of, delayed argument evaluation. The only significant exception is a small number of packages which leverage call-by-need for meta-programming.
Klasifikace
Druh
D - Stať ve sborníku
CEP obor
—
OECD FORD obor
10201 - Computer sciences, information science, bioinformathics (hardware development to be 2.2, social aspect to be 5.8)
Návaznosti výsledku
Projekt
<a href="/cs/project/EF15_003%2F0000421" target="_blank" >EF15_003/0000421: Big Code: Škálovatelná analýza rozsáhlých bází programů</a><br>
Návaznosti
P - Projekt vyzkumu a vyvoje financovany z verejnych zdroju (s odkazem do CEP)
Ostatní
Rok uplatnění
2019
Kód důvěrnosti údajů
S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů
Údaje specifické pro druh výsledku
Název statě ve sborníku
Volume 3, Issue OOPSLA
ISBN
—
ISSN
2475-1421
e-ISSN
—
Počet stran výsledku
27
Strana od-do
1-27
Název nakladatele
ACM
Místo vydání
New York
Místo konání akce
Athens
Datum konání akce
20. 10. 2019
Typ akce podle státní příslušnosti
WRD - Celosvětová akce
Kód UT WoS článku
—