SPLASH 2021
Sun 17 - Fri 22 October 2021 Chicago, Illinois, United States
Thu 21 Oct 2021 08:10 - 08:25 at Zurich D - Corpus and User Studies - mirror Chair(s): Julian Dolby
Thu 21 Oct 2021 16:10 - 16:25 at Zurich D - Corpus and User Studies Chair(s): Iulian Neamtiu

Most dynamic languages allow users to turn text into code using various functions, often named <tt>eval</tt>, 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 <tt>eval</tt>. Understanding why <tt>eval</tt> 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 <tt>eval</tt> from 240,327 scripts extracted from 15,401 R packages. We find that <tt>eval</tt> is indeed in widespread use; R’s <tt>eval</tt> is more pervasive and arguably dangerous than what was previously reported for JavaScript.

Thu 21 Oct

Displayed time zone: Central Time (US & Canada) change

07:40 - 09:00
Corpus and User Studies - mirrorOOPSLA at Zurich D
Chair(s): Julian Dolby IBM Research, USA
07:40
15m
Talk
Well-Typed Programs Can Go Wrong: A Study of Typing-Related Bugs in JVM CompilersVirtual
OOPSLA
Stefanos Chaliasos Athens University of Economics and Business, Thodoris Sotiropoulos Athens University of Economics and Business, Georgios-Petros Drosos Athens University of Economics and Business, Charalambos Ioannis Mitropoulos Technical University of Crete, Dimitris Mitropoulos University of Athens, Diomidis Spinellis Athens University of Economics and Business; Delft University of Technology
DOI
07:55
15m
Talk
How Statically-Typed Functional Programmers Write CodeVirtual
OOPSLA
Justin Lubin University of California at Berkeley, Sarah E. Chasins University of California at Berkeley
DOI
08:10
15m
Talk
What We Eval in the Shadows: A Large-Scale Study of Eval in R ProgramsVirtual
OOPSLA
Aviral Goel Northeastern University, Pierre Donat-Bouillud Czech Technical University, Filip Křikava Czech Technical University, Christoph Kirsch University of Salzburg; Czech Technical University, Jan Vitek Northeastern University; Czech Technical University
DOI
08:25
35m
Live Q&A
Discussion, Questions and Answers
OOPSLA

15:40 - 17:00
Corpus and User StudiesOOPSLA at Zurich D -8h
Chair(s): Iulian Neamtiu New Jersey Institute of Technology
15:40
15m
Talk
Well-Typed Programs Can Go Wrong: A Study of Typing-Related Bugs in JVM CompilersVirtual
OOPSLA
Stefanos Chaliasos Athens University of Economics and Business, Thodoris Sotiropoulos Athens University of Economics and Business, Georgios-Petros Drosos Athens University of Economics and Business, Charalambos Ioannis Mitropoulos Technical University of Crete, Dimitris Mitropoulos University of Athens, Diomidis Spinellis Athens University of Economics and Business; Delft University of Technology
DOI
15:55
15m
Talk
How Statically-Typed Functional Programmers Write CodeVirtual
OOPSLA
Justin Lubin University of California at Berkeley, Sarah E. Chasins University of California at Berkeley
DOI
16:10
15m
Talk
What We Eval in the Shadows: A Large-Scale Study of Eval in R ProgramsVirtual
OOPSLA
Aviral Goel Northeastern University, Pierre Donat-Bouillud Czech Technical University, Filip Křikava Czech Technical University, Christoph Kirsch University of Salzburg; Czech Technical University, Jan Vitek Northeastern University; Czech Technical University
DOI
16:25
35m
Live Q&A
Discussion, Questions and Answers
OOPSLA