Reasonably-Most-General Clients for JavaScript Library Analysis
Autor: | Erik Krogh Kristensen, Anders Møller |
---|---|
Jazyk: | angličtina |
Rok vydání: | 2019 |
Předmět: |
Computer science
Programming language 020207 software engineering Context (language use) 02 engineering and technology JavaScript library Static analysis JavaScript computer.software_genre Program analysis 0202 electrical engineering electronic engineering information engineering Code (cryptography) 020201 artificial intelligence & image processing computer TypeScript computer.programming_language |
Zdroj: | Kristensen, E K & Møller, A 2019, ' Reasonably-Most-General Clients for JavaScript Library Analysis ', Proceedings of the International Conference on Software Engineering . https://doi.org/10.1109/ICSE.2019.00026 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE) ICSE |
Popis: | A well-known approach to statically analyze libraries without having access to their client code is to model all possible clients abstractly using a most-general client. In dynamic languages, however, a most-general client would be too general: it may interact with the library in ways that are not intended by the library developer and are not realistic in actual clients, resulting in useless analysis results. In this work, we explore the concept of a reasonably-most-general client, in the context of a new static analysis tool ReaGenT that aims to detect errors in TypeScript declaration files for JavaScript libraries. By incorporating different variations of reasonably-most-general clients into an existing static analyzer for JavaScript, we use ReaGenT to study how different assumptions of client behavior affect the analysis results. We also show how ReaGenT is able to find type errors in real-world TypeScript declaration files, and, once the errors have been corrected, to guarantee that no remaining errors exist relative to the selected assumptions. |
Databáze: | OpenAIRE |
Externí odkaz: |