log in  |  register  |  feedback?  |  help  |  web accessibility
Logo
On the Design, Implementation, and Use of Laziness in R
Zoom
Tuesday, October 6, 2020, 4:15-5:15 pm Calendar
  • You are subscribed to this talk through .
  • You are watching this talk through .
  • You are subscribed to this talk. (unsubscribe, watch)
  • You are watching this talk. (unwatch, subscribe)
  • You are not subscribed to this talk. (watch, subscribe)
Abstract

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.

Come join us via Zoom: https://umd.zoom.us/j/98723227318?pwd=K0RJZVZZM1Jhd2laMlg1ajgvUjltQT09

Password: 5108

Bio

I am a third year Computer Science Ph.D. student at Northeastern University. I am a member of the Programming Research Laboratory. I am interested in all aspects related to the design and implementation of programming languages. Currently, I am studying laziness (call-by-need) in R.

This talk is organized by Ian Sweet