Write a Blog >>
ESEC/FSE 2022
Mon 14 - Fri 18 November 2022 Singapore
Mon 14 Nov 2022 16:30 - 16:45 at SRC Auditorium 2 - Software Evolution Chair(s): Miryung Kim

Type annotations and gradual type checkers attempt to reveal errors and facilitate maintenance in dynamically typed programming languages. Despite the availability of these features and tools, it is currently unclear how quickly developers are adopting them, what strategies they follow when doing so, and whether adding type annotations reveals more type errors. This paper presents the first large-scale empirical study of the evolution of type annotations and type errors in Python. The study is based on an analysis of 1,414,936 type annotation changes, which we extract from 1,123,393 commits among 9,655 projects. Our results show that (i) type annotations are getting more popular, and once added, often remain unchanged in the projects for a long time, (ii) projects follow three evolution patterns for type annotation usage – regular annotation, type sprints, and occasional uses – and that the used pattern correlates with the number of contributors, (iii) more type annotations help find more type errors (0.704 correlation), but nevertheless, many commits (78.3%) are committed despite having such errors. Our findings show that better developer training and automated techniques for adding type annotations are needed, as most code still remains unannotated, and they call for a better integration of gradual type checking into the development process.

Mon 14 Nov

Displayed time zone: Beijing, Chongqing, Hong Kong, Urumqi change

16:00 - 17:30
Software EvolutionDemonstrations / Research Papers / Industry Paper at SRC Auditorium 2
Chair(s): Miryung Kim University of California at Los Angeles, USA
16:00
15m
Research paper
Accurate Method and Variable Tracking in Commit History
Research Papers
Mehran Jodavi Concordia University, Nikolaos Tsantalis Concordia University
Link to publication DOI Pre-print
16:15
15m
Research paper
Classifying Edits to Variability in Source Code
Research Papers
Paul Maximilian Bittner University of Ulm, Christof Tinnes Siemens, Alexander Schultheiß Humboldt University of Berlin, Sören Viegener University of Ulm, Timo Kehrer University of Bern, Thomas Thüm University of Ulm
Link to publication DOI Pre-print Media Attached
16:30
15m
Talk
The Evolution of Type Annotations in Python: An Empirical StudyDistinguished Paper Award
Research Papers
Luca Di Grazia University of Stuttgart, Michael Pradel University of Stuttgart
DOI Pre-print Media Attached
16:45
15m
Talk
UTANGO: Untangling Commits with Context-Aware, Graph-Based, Code Change Clustering Learning Model
Research Papers
Yi Li New Jersey Institute of Technology, Shaohua Wang New Jersey Institute of Technology, Tien N. Nguyen University of Texas at Dallas
DOI
17:00
15m
Talk
Sometimes You Have to Treat the Symptoms: Tackling Model Drift in an Industrial Clone-and-Own Software Product Line
Industry Paper
Christof Tinnes Siemens, Wolfgang Rössler Siemens Mobility, Uwe Hohenstein Siemens, Torsten Kühn Siemens Mobility, Andreas Biesdorf Siemens, Sven Apel Saarland University
DOI
17:15
7m
Talk
Context Aware Code Recommendation in Intellij IDEA
Demonstrations
Shamsa Abid Lahore University of Management Sciences, Hamid Abdul Basit Prince Sultan University, Shafay Shamail LUMS, DHA, Lahore
17:23
7m
Talk
Python-by-Contract Dataset
Demonstrations
Jiyang Zhang University of Texas at Austin, Marko Ristin ZHAW School of Engineering, Phillip Schanely , Hans Wernher van de Venn Zurich University of Applied Sciences (ZHAW), Milos Gligoric University of Texas at Austin