Reflekt: a Library for Compile-Time Reflection in Kotlin
Wed 11 May 2022 05:05 - 05:10 at ICSE room 3-odd hours - Tools and Configurations Chair(s): Robert Chatley
Reflection in Kotlin is a powerful mechanism to introspect the program behavior during its execution at run-time. However, among the variety of practical task involving reflection, there are scenarios for which poor performance of the runtime approach becomes a significant disadvantage. This problem manifests itself in Kotless, a popular framework for developing serverless applications, because the faster the applications launches, the cheaper their cloud infrastructure costs. %Nevertheless, the run-time reflection approach has been used in Kotless due to the lack of alternatives, that combine the concise way of their usage with the overall efficiency. In this paper, we present Reflekt — a compile-time reflection library to perform the search among classes, object expressions (which in Kotlin are implemented as singleton classes), and functions in the Kotlin source code based on the given search query. It comes with a convenient DSL and much better performance comparing to the existing run-time reflection approaches. Our experiments show that replacing run-time reflection calls to the Reflekt approach in the Kotless source code resulted in a significant performance boost in the start-up time of the applications.
Tue 10 MayDisplayed time zone: Eastern Time (US & Canada) change
13:00 - 14:00 | Tools and Environments 5Technical Track / SEIP - Software Engineering in Practice at ICSE room 4-odd hours Chair(s): Frank Tip Northeastern University | ||
13:00 5mTalk | Reflekt: a Library for Compile-Time Reflection in Kotlin SEIP - Software Engineering in Practice Anastasiia Birillo JetBrains Research, Elena Lyulina JetBrains Research, Maria Malysheva JetBrains Research;Saint Petersburg State University, Vladislav Tankov JetBrains, ITMO University, Timofey Bryksin JetBrains Research; HSE University Pre-print Media Attached | ||
13:05 5mTalk | FlakiMe: Laboratory-Controlled Test Flakiness Impact Assessment Technical Track Maxime Cordy University of Luxembourg, Luxembourg, Renaud Rwemalika University of Luxembourg, Adriano Franci University of Luxembourg, Mike Papadakis University of Luxembourg, Luxembourg, Mark Harman University College London Pre-print Media Attached | ||
13:10 5mTalk | Semantic Image Fuzzing of AI Perception Systems Technical Track Trey Woodlief University of Virginia, Sebastian Elbaum University of Virginia, Kevin Sullivan University of Virginia DOI Pre-print Media Attached | ||
13:15 5mTalk | Use of Test Doubles in Android Testing: An In-Depth Investigation Technical Track Mattia Fazzini University of Minnesota, Chase Choi University of Minnesota, Juan Manuel Copia IMDEA Software Institute, Gabriel Lee University of Minnesota, Yoshiki Kakehi Georgia Institute of Technology, Alessandra Gorla IMDEA Software Institute, Alessandro Orso Georgia Tech Pre-print Media Attached |
Wed 11 MayDisplayed time zone: Eastern Time (US & Canada) change
05:00 - 06:00 | Tools and ConfigurationsTechnical Track / SEIP - Software Engineering in Practice at ICSE room 3-odd hours Chair(s): Robert Chatley Imperial College London | ||
05:00 5mTalk | Challenges in Applying Continuous Experimentation: A Practitioners’ Perspective SEIP - Software Engineering in Practice Kevin Anderson Delft University of Technology, Denise Visser bol.com, Jan-Willem Mannen ING, Yuxiang Jiang Delft University of Technology, Arie van Deursen Delft University of Technology, Netherlands DOI Pre-print | ||
05:05 5mTalk | Reflekt: a Library for Compile-Time Reflection in Kotlin SEIP - Software Engineering in Practice Anastasiia Birillo JetBrains Research, Elena Lyulina JetBrains Research, Maria Malysheva JetBrains Research;Saint Petersburg State University, Vladislav Tankov JetBrains, ITMO University, Timofey Bryksin JetBrains Research; HSE University Pre-print Media Attached | ||
05:10 5mTalk | ARCLIN: Automated API Mention Resolution for Unformatted Texts Technical Track Yintong Huo The Chinese University of Hong Kong, Yuxin Su Sun Yat-sen University, Hongming Zhang The Hong Kong University of Science and Technology, Michael Lyu The Chinese University of Hong Kong DOI Pre-print Media Attached | ||
05:15 5mTalk | On the Benefits and Limits of Incremental Build of Software Configurations: An Exploratory Study Technical Track Georges Aaron RANDRIANAINA Université de Rennes 1, IRISA, Xhevahire Tërnava Université de Rennes 1, INRIA/IRISA, Djamel Eddine Khelladi CNRS, France, Mathieu Acher Univ. Rennes 1, Inria, IRISA, Institut Universitaire de France (IUF) Pre-print Media Attached | ||
05:20 5mTalk | Causality in Configurable Software Systems Technical Track Clemens Dubslaff TU Dresden, Kallistos Weis Saarland University, Christel Baier TU Dresden, Germany, Sven Apel Saarland University Pre-print Media Attached | ||
05:25 5mTalk | A Scalable t-wise Coverage Estimator Technical Track Eduard Baranov Université Catholique de Louvain, Belgium, Sourav Chakraborty Indian Statistical Institute (ISI) , Kolkata, India, Axel Legay Université Catholique de Louvain, Belgium, Kuldeep S. Meel National University of Singapore, N. V. Vinodchandran University of Nebraska-Lincoln DOI Pre-print Media Attached |