Developer Tools

DepWareTrans migrates code repos with 100% success vs 9% baseline

File-level LLM translation fails on Java-to-Kotlin; dependency batching fixes it.

Deep Dive

DepWareTrans, developed by Sivajeet Chand, Alexander Pretschner, Steve Haupt, Derui Zhu, and Sushant Kumar Pandey, tackles a core limitation of LLM-based code migration: existing tools translate file-by-file, which breaks cross-file dependencies and produces non-compiling code. The paper, accepted at the ASE 2026 Industry Showcase, identifies dependency inconsistency—not simple syntax errors—as the root cause of failure when migrating large repositories. By constructing a dependency graph and grouping interdependent files into cohesive batches, the framework keeps related code consistent during translation.

Evaluated on STAR, a 51,000-LOC production Java system being migrated to Kotlin, DepWareTrans achieved 100% compilation and test success within a small number of iterations. In contrast, traditional file-level approaches managed only 38.16% compilation and 9.39% test success. The framework also generalized to other co-executable language pairs, including Java-to-Scala and C#-to-F#, demonstrating broad applicability. Iterative compile- and test-driven validation catches and fixes issues incrementally, making repo-scale migration practical for industrial modernization projects.

Key Points
  • DepWareTrans groups interdependent files into dependency-consistent batches rather than translating files individually
  • On STAR (51K LOC), it hit 100% compilation and test success vs 38.16% and 9.39% for file-level LLM approaches
  • Validated across Java→Kotlin, Java→Scala, and C#→F#; accepted at ASE 2026 Industry Showcase

Why It Matters

Enables reliable, large-scale legacy code modernization—a key blocker for enterprises adopting new languages safely.

📬 Get the top 10 AI stories daily