An empirical study on bugs in TypeScript programming language
The TypeScript programming language adds static types to JavaScript, which can be seen as a superset of JavaScript. As special infrastructure software, programming languages may also have bugs, preventing the correct source code from being executed correctly and reliably. To deeply understand the ch...
Gespeichert in:
| Veröffentlicht in: | The Journal of systems and software Jg. 226; S. 112445 |
|---|---|
| Hauptverfasser: | , , |
| Format: | Journal Article |
| Sprache: | Englisch |
| Veröffentlicht: |
Elsevier Inc
01.08.2025
|
| Schlagworte: | |
| ISSN: | 0164-1212 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Zusammenfassung: | The TypeScript programming language adds static types to JavaScript, which can be seen as a superset of JavaScript. As special infrastructure software, programming languages may also have bugs, preventing the correct source code from being executed correctly and reliably. To deeply understand the characteristics of historical bugs in the TypeScript programming language, this paper conducts an empirical study. The study involved the versions and features of programming language affected by bugs, the symptoms caused by bugs, the efforts to fix bugs, and the root causes of bugs. By analyzing 8814 bug reports and 7974 pull requests in the repository of TypeScript, our findings reveal that programming language features most severely affected by bugs are “Name, Binding and Scope” and “data types”. The most frequent symptoms include “Behavior Error” and “Compile Error”. The most common root causes are “Missing Features”, “Wrong Control Flow”, “Data Type” errors, and “Processing” errors, all of which could be categorized into “Semantic” errors. Our findings could reveal some characteristics of bugs in TypeScript, provide potential help to developers, testers, and maintainers of TypeScript to improve the quality of TypeScript, and provide a better programming experience for users of TypeScript.
•A large-scale empirical study on bugs in TypeScript programming language.•Analyze versions and features of programming language affected by bugs.•Analyze the symptoms and root causes of bugs.•Reveal how bugs are triggered and fixed.•Give implications for developers, testers, maintainers, and users of TypeScript. |
|---|---|
| ISSN: | 0164-1212 |
| DOI: | 10.1016/j.jss.2025.112445 |