InterTrans: Leveraging Transitive Intermediate Translations to Enhance LLM-based Code Translation

Marcos Macedo, Yuan Tian, Pengyu Nie, Filipe R. Cogo, Bram Adams
11/1/2024
cs.SEcs.AI

No official code found. Best implementation: RISElabQueens/InterTrans (5 stars, MIT, last commit 2025-06-04).

Abstract

Code translation aims to convert a program from one programming language (PL) to another. This long-standing software engineering task is crucial for modernizing legacy systems, ensuring cross-platform compatibility, enhancing performance, and more. However, automating this process remains challenging due to many syntactic and semantic differences between PLs. Recent studies show that even advanced techniques such as large language models (LLMs), especially open-source LLMs, still struggle with the task. Currently, code LLMs are trained with source code from multiple programming languages, thus presenting multilingual capabilities. In this paper, we investigate whether such multilingual capabilities can be harnessed to enhance code translation. To achieve this goal, we introduce InterTrans, an LLM-based automated code translation approach that, in contrast to existing approaches, leverages intermediate translations across PLs to bridge the syntactic and semantic gaps between source and target PLs. InterTrans contains two stages. It first utilizes a novel Tree of Code Translation (ToCT) algorithm to plan transitive intermediate translation sequences between a given source and target PL, then validates them in a specific order. We evaluate InterTrans with three open LLMs on three benchmarks (i.e., CodeNet, HumanEval-X, and TransCoder) involving six PLs. Results show an absolute improvement between 18.3% to 43.3% in Computation Accuracy (CA) for InterTrans over Direct Translation with 10 attempts. The best-performing variant of InterTrans (with Magicoder LLM) achieved an average CA of 87.3%-95.4% on three benchmarks.

View on arXivView PDF

Code Implementations(1)

MIT

InterTrans Engine is a backend for LLM-based Code Translation across programming languages

50Go, ShellNov 1, 20241 years agoMIT

Similar Papers

Cite this paper

@article{macedo2024intertrans,
  title  = {InterTrans: Leveraging Transitive Intermediate Translations to Enhance LLM-based Code Translation},
  author = {Marcos Macedo and Yuan Tian and Pengyu Nie and Filipe R. Cogo and Bram Adams},
  year   = {2024},
  eprint = {2411.01063},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2411.01063v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2411.01063.svg)](https://codeofpaper.com/paper/2411.01063)

Discussion