Research output: Chapter in Book/Report/Conference proceeding › Conference contribution › Research › peer-review
In this paper, we present Lupa - a platform for large-scale analysis of the programming language usage. Lupa is a command line tool that uses the power of the IntelliJ Platform under the hood, which gives it access to powerful static analysis tools used in modern IDEs. The tool supports custom analyzers that process the rich concrete syntax tree of the code and can calculate its various features: the presence of entities, their dependencies, definition-usage chains, etc. Currently, Lupa supports analyzing Python and Kotlin, but can be extended to other languages supported by IntelliJ-based IDEs. We explain the internals of the tool, show how it can be extended and customized, and describe an example analysis that we carried out with its help: analyzing the syntax of ranges in Kotlin.
Original language | English |
---|---|
Title of host publication | Proceedings - 2022 Mining Software Repositories Conference, MSR 2022 |
Publisher | Institute of Electrical and Electronics Engineers Inc. |
Pages | 398-402 |
Number of pages | 5 |
ISBN (Electronic) | 9781450393034 |
DOIs | |
State | Published - 23 May 2022 |
Event | 2022 Mining Software Repositories Conference, MSR 2022 - Pittsburgh, United States Duration: 23 May 2022 → 24 May 2022 |
Conference | 2022 Mining Software Repositories Conference, MSR 2022 |
---|---|
Country/Territory | United States |
City | Pittsburgh |
Period | 23/05/22 → 24/05/22 |
ID: 97485633