ReduKtor: How We Stopped Worrying About Bugs in Kotlin Compiler
Daniil Stepanov, Marat Akhin, Mikhail Belyaev

TL;DR
ReduKtor is a novel tool that combines program slicing, hierarchical delta debugging, and Kotlin-specific transformations to improve bug localization and minimal reproducing example generation in Kotlin compiler development.
Contribution
The paper introduces ReduKtor, a new approach that synergistically combines language-agnostic and Kotlin-specific techniques for effective delta debugging in Kotlin.
Findings
ReduKtor outperforms classic delta debugging in efficiency and performance.
Evaluation on synthetic and real Kotlin programs demonstrates practical usability.
Using both language-agnostic and language-specific techniques yields better reduction results.
Abstract
Bug localization is well-known to be a difficult problem in software engineering, and specifically in compiler development, where it is beneficial to reduce the input program to a minimal reproducing example; this technique is more commonly known as delta debugging. What additionally contributes to the problem is that every new programming language has its own unique quirks and foibles, making it near impossible to reuse existing tools and approaches with full efficiency. In this experience paper we tackle the delta debugging problem w.r.t. Kotlin, a relatively new programming language from JetBrains. Our approach is based on a novel combination of program slicing, hierarchical delta debugging and Kotlin-specific transformations, which are synergistic to each other. We implemented it in a prototype called ReduKtor and did extensive evaluation on both synthetic and real Kotlin programs;…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
