7 papers
Getting Python Types Right with RightTyper
Juan Altmayer Pizzorno, Emery D. Berger
Python type annotations enable static type checking, but most code remains untyped because manual annotation is time-consuming and tedious. Past approaches to automatic type infere…
It's Not Easy Being Green: On the Energy Efficiency of Programming Languages
Nicolas van Kempen, Hyuk-Je Kwon, Dung Tuan Nguyen +1
Does the choice of programming language affect energy consumption? Previous highly visible studies have established associations between certain programming languages and energy co…
ChatDBG: Augmenting Debugging with Large Language Models
Kyla H. Levin, Nicolas van Kempen, Emery D. Berger +1
Debugging is a critical but challenging task for programmers. This paper proposes ChatDBG, an AI-powered debugging assistant. ChatDBG integrates large language models (LLMs) to sig…
CoverUp: Effective High Coverage Test Generation for Python
Juan Altmayer Pizzorno, Emery D. Berger
Testing is an essential part of software development. Test generation tools attempt to automate the otherwise labor-intensive task of test creation, but generating high-coverage te…
From Perception to Decision: Assessing the Role of Chart Types Affordances in High-Level Decision Tasks
Yixuan Li, Emery D. Berger, Minsuk Kahng +1
Visualization design influences how people perceive data patterns, yet most research focuses on low-level analytic tasks, such as finding correlations. The extent to which these pe…
Flowco: Rethinking Data Analysis in the Age of LLMs
Stephen N. Freund, Brooke Simon, Emery D. Berger +1
Conducting data analysis typically involves authoring code to transform, visualize, analyze, and interpret data. Large language models (LLMs) are now capable of generating such cod…