Answers are grounded in this paper and cite their sources.
Background: Legacy code modernization is no longer about just translating one file into another language. Real software repositories contain dependencies between files and external services, hidden assumptions, and tests that must continue to work after migration. These repository-level relationships make modernization much harder of a task than simple code translation. Objective: This paper reviews graph-aware, recursive, and neuro-symbolic approaches for legacy modernization and examines how well they perform when applied to real-world software repositories. Methods: We reviewed English-language studies indexed in IEEE Xplore, the ACM Digital Library, and arXiv from January 2020 to April 2026, focusing on repositorylevel code translation, refactoring, and validation. Results: There are three recurring patterns. High-level repository understanding is enhanced by graph-based representations. LLMs can operate beyond a single context window thanks to recursive orchestration and when executability and contract preservation truly matter, pure generative techniques are outperformed by validation-heavy pipelines such as AlphaTrans and TRAM. Benchmark gains are not the same as deployment-ready because often benchmark suites underrepresent runtime variability, validation is costly, and graph extraction is frequently incomplete, failing to account for undocumented assumptions. Conclusions: No single approach solves everything. The conclusion is that all three layers—graph structure, orchestration technique, and deterministic checking— must be combined.
No takes yet. Share an insight, caveat, or question.
Illahi et al. (2026) studied this question.
Synapse has enriched 10 related papers. Consider them for comparative context: