Abstract
In this experience paper, we design, implement, and evaluate a new static type-error detection tool for Python. To build a practical tool, we first collected and analyzed 68 real-world type errors gathered from 20 open-source projects. This empirical investigation revealed four key static-analysis features that are crucial for the effective detection of Python type errors in practice. Utilizing these insights, we present a tool called Pyinder, which can successfully detect 34 out of the 68 bugs, compared to existing type analysis tools that collectively detect only 16 bugs. We also discuss the remaining 34 bugs that Pyinder failed to detect, offering insights into future directions for Python type analysis tools. Lastly, we show that Pyinder can uncover previously unknown bugs in recent Python projects.
Original language | English |
---|---|
Title of host publication | Proceedings - 2024 39th ACM/IEEE International Conference on Automated Software Engineering, ASE 2024 |
Publisher | Association for Computing Machinery, Inc |
Pages | 1808-1820 |
Number of pages | 13 |
ISBN (Electronic) | 9798400712487 |
DOIs | |
Publication status | Published - 2024 Oct 27 |
Event | 39th ACM/IEEE International Conference on Automated Software Engineering, ASE 2024 - Sacramento, United States Duration: 2024 Oct 28 → 2024 Nov 1 |
Publication series
Name | Proceedings - 2024 39th ACM/IEEE International Conference on Automated Software Engineering, ASE 2024 |
---|
Conference
Conference | 39th ACM/IEEE International Conference on Automated Software Engineering, ASE 2024 |
---|---|
Country/Territory | United States |
City | Sacramento |
Period | 24/10/28 → 24/11/1 |
Bibliographical note
Publisher Copyright:Copyright held by the owner/author(s).
ASJC Scopus subject areas
- Artificial Intelligence
- Software
- Safety, Risk, Reliability and Quality