ESEIW 2024
Sun 20 - Fri 25 October 2024 Barcelona, Spain

Background: Since Google introduced Kotlin as an official programming language for developing Android apps in 2017, Kotlin has gained widespread adoption in Android development. The interoperability of Java and Kotlin’s design nature allows them to coexist and interact with each other smoothly within a project. Aims: However, there is limited research on how Java and Kotlin interact with each other in real-world projects and what challenges are faced during these interactions. The answers to these questions are key to understanding these kinds of cross-language software systems. Methods: In this paper, we implemented a tool named DependExtractor, which can extract 11 kinds of Kotlin-Java dependencies, and conducted an empirical study of 23 Kotlin-Java real-world projects with 3,227 Java and 8,630 Kotlin source files. Results: Our findings revealed that Java and Kotlin frequently interact with each other in these cross-language projects, with access and call dependency types being the most dominant. Compared to files interacting with other files in the same language, Java/Kotlin source files, which participate in the cross-language interactions, undergo more commits. Additionally, among all Kotlin-Java problematic interactions, we identified seven common mistakes, along with their fixing strategies. Conclusions: The findings of this study can help developers understand and address the challenges in Kotlin-Java projects.

Fri 25 Oct

Displayed time zone: Brussels, Copenhagen, Madrid, Paris change

16:00 - 17:00
Empirical studies for programming languages challengesESEM Technical Papers / ESEM Emerging Results, Vision and Reflection Papers Track at Telensenyament (B3 Building - 1st Floor)
Chair(s): Julian Frattini Blekinge Institute of Technology
16:00
20m
Full-paper
Cross-Language Dependencies: An Empirical Study of Kotlin-Java
ESEM Technical Papers
Qiong Feng Nanjing University of Science and Technology, Huan Ji Huawei Nanjing Research Center, Xiaotian Ma Nanjing University of Science and Technology, Peng Liang Wuhan University, China
Pre-print Media Attached
16:20
20m
Full-paper
Broken Agreement: The Evolution of Solidity Error Handling
ESEM Technical Papers
Charalambos Ioannis Mitropoulos Technical University of Crete, Maria Kechagia University College London, Chrysostomos Maschas GRNET, Sotirios Ioannidis Technical University of Crete, Federica Sarro University College London, Dimitris Mitropoulos University of Athens
16:40
15m
Vision and Emerging Results
Rusty Linux: Advances in Rust for Linux Kernel Development
ESEM Emerging Results, Vision and Reflection Papers Track
Shane Panter Boise State University, Nasir Eisty Boise State University