What We Eval in the Shadows A Large-Scale Study of Eval in R Programs

被引:1
|
作者
Goel, Aviral [1 ]
Donat-Bouillud, Pierre [2 ]
Krikava, Filip [2 ]
Kirsch, Christoph M. [2 ,3 ]
Vitek, Jan [1 ,2 ]
机构
[1] Northeastern Univ, Boston, MA 02115 USA
[2] Czech Tech Univ, Prague, Czech Republic
[3] Univ Salzburg, Salzburg, Austria
来源
基金
欧洲研究理事会; 美国国家科学基金会;
关键词
eval; dynamic languages;
D O I
10.1145/3485502
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Most dynamic languages allow users to turn text into code using various functions, often named eval, with language-dependent semantics. The widespread use of these reflective functions hinders static analysis and prevents compilers from performing optimizations. This paper aims to provide a better sense of why programmers use eval. Understanding why eval is used in practice is key to finding ways to mitigate its negative impact. We have reasons to believe that reflective feature usage is language and application domain-specific; we focus on data science code written in R and compare our results to previous work that analyzed web programming in JavaScript. We analyze 49,296,059 calls to eval from 240,327 scripts extracted from 15,401 R packages. We find that eval is indeed in widespread use; R's eval is more pervasive and arguably dangerous than what was previously reported for JavaScript.
引用
收藏
页数:23
相关论文
共 50 条
  • [41] Supporting relative debugging for large-scale UPC programs
    Minh Ngoc Dinh
    Abramson, David
    Chao, Jin
    DeRose, Luiz
    Moench, Bob
    Gontarek, Andrew
    2014 INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE, 2014, 29 : 1491 - 1503
  • [42] The challenges of large-scale prevention and health promotion programs
    Kohlmann, Thomas
    INTERNATIONAL JOURNAL OF PUBLIC HEALTH, 2008, 53 (02) : 67 - 67
  • [43] Bounding Energy Consumption in Large-Scale MPI Programs
    Rountree, Barry
    Lowenthal, David K.
    Funk, Shelby
    Freeh, Vincent W.
    de Supinski, Bronis R.
    Schulz, Martin
    2007 ACM/IEEE SC07 CONFERENCE, 2010, : 54 - +
  • [44] Accounting for Surveyor Effort in Large-Scale Monitoring Programs
    Aagaard, Kevin
    Lyons, James E.
    Thogmartin, Wayne E.
    JOURNAL OF FISH AND WILDLIFE MANAGEMENT, 2018, 9 (02): : 459 - 466
  • [45] STRATEGIES AND PROGRAMS FOR COPING WITH LARGE-SCALE FOOD SHORTAGES
    MANETSCH, TJ
    ECOLOGY OF FOOD AND NUTRITION, 1979, 8 (04) : 209 - 218
  • [46] Incremental location of combined features for large-scale programs
    Eisenbarth, T
    Koschke, R
    Simon, D
    INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 2002, : 273 - 282
  • [47] The stability of rater severity in large-scale assessment programs
    Congdon, PJ
    McQueen, J
    JOURNAL OF EDUCATIONAL MEASUREMENT, 2000, 37 (02) : 163 - 178
  • [48] SOLVING LARGE-SCALE LINEAR-PROGRAMS BY AGGREGATION
    SHETTY, CM
    TAYLOR, RW
    COMPUTERS & OPERATIONS RESEARCH, 1987, 14 (05) : 385 - 393
  • [49] SUBGROUP IMPACTS OF LARGE-SCALE WELFARE EMPLOYMENT PROGRAMS
    FRIEDLANDER, D
    REVIEW OF ECONOMICS AND STATISTICS, 1993, 75 (01) : 138 - 143
  • [50] Intensive use of IVF by large-scale dairy programs
    Sanches, Bruno Valente
    Zangirolamo, Amanda Fonseca
    Seneda, Marcelo Marcondes
    ANIMAL REPRODUCTION, 2019, 16 (03) : 394 - 401