English
Related papers

Related papers: Migrating Code At Scale With LLMs At Google

200 papers

Rewriting C code in Rust provides stronger memory safety, yet migrating large codebases such as the 32-million-line Linux kernel remains challenging. While rule-based translators (e.g., C2Rust) provide accurate yet largely unsafe Rust…

Programming Languages · Computer Science 2025-04-01 Yuchen Liu , Junhao Hu , Yingdi Shan , Ge Li , Yanzhen Zou , Yihong Dong , Tao Xie

Large language models (LLMs) have gained widespread popularity and have steadily improved over time, enabling software developers to use them for various code-related tasks. One common task is code refactoring, where the LLM suggests…

Software Engineering · Computer Science 2026-05-07 David Schön , Faiza Amjad , Tehreem Asif , Ranim Khojah , Mazen Mohamad , Francisco Gomes de Oliveira Neto , Philipp Leitner

With software maintenance accounting for 50% of the cost of developing software, enhancing code quality and reliability has become more critical than ever. In response to this challenge, this doctoral research proposal aims to explore…

Software Engineering · Computer Science 2024-06-25 Fernando Vallecillos Ruiz

Developers heavily rely on Application Programming Interfaces (APIs) from libraries to build their software. As software evolves, developers may need to replace the used libraries with alternate libraries, a process known as library…

Software Engineering · Computer Science 2024-02-01 Mohayeminul Islam , Ajay Kumar Jha , Ildar Akhmetov , Sarah Nadi

The advent of large language models (LLMs) has ushered in a new era in automated code translation across programming languages. Since most code-specific LLMs are pretrained on well-commented code from large repositories like GitHub, it is…

Software Engineering · Computer Science 2026-01-26 Monika Gupta , Ajay Meena , Anamitra Roy Choudhury , Vijay Arya , Srikanta Bedathur

Software engineering activities such as package migration, fixing errors reports from static analysis or testing, and adding type annotations or other specifications to a codebase, involve pervasively editing the entire repository of code.…

Keeping software systems up to date is essential to avoid technical debt, security vulnerabilities, and the rigidity typical of legacy systems. However, updating libraries and frameworks remains a time consuming and error-prone process.…

Software Engineering · Computer Science 2026-01-09 Aylton Almeida , Laerte Xavier , Marco Tulio Valente

Researchers have made significant progress in automating the software development process in the past decades. Recent progress in Large Language Models (LLMs) has significantly impacted the development process, where developers can use…

Software Engineering · Computer Science 2024-07-26 Yuntong Zhang , Haifeng Ruan , Zhiyu Fan , Abhik Roychoudhury

Owing to the rapid evolution of technologies and project requirements, organizations need to upgrade the code base in their software projects to a new version of the programming language or even translating to an entirely new one. However,…

Software Engineering · Computer Science 2025-01-13 Jahnavi Kumar , Venkata Lakshmana Sasaank Janapati , Mokshith Reddy Tanguturi , Sridhar Chimalakonda

With the rapid advancement of powerful large language models (LLMs) in recent years, a wide range of software engineering tasks can now be addressed using LLMs, significantly enhancing productivity and scalability. Numerous benchmark…

Software Engineering · Computer Science 2026-05-29 Linbo Liu , Xinle Liu , Qiang Zhou , Lin Chen , Yihan Liu , Hoan Nguyen , Behrooz Omidvar-Tehrani , Xi Shen , Jun Huan , Omer Tripp , Anoop Deoras

Large language models (LLMs) for code are increasingly used in software development, but they remain static after pretraining while APIs and software libraries continue to evolve. Model editing offers a lightweight alternative to retraining…

Software Engineering · Computer Science 2026-05-11 Vinaik Chhetri , Moghis Fereidouni , A. B Siddique , Umar Farooq

Software developers often repeat code changes, known as "code change patterns" (CPATs), within and across projects. Automating these CPATs accelerates development, but current Transformation by Example (TBE) techniques are limited by the…

Software Engineering · Computer Science 2024-06-18 Malinda Dilhara , Abhiram Bellur , Timofey Bryksin , Danny Dig

Context: A Legacy system can be defined as a system that significantly resists modification and evolution. According to the literature, there are two main strategies to migrate a legacy system: (a) to replace the legacy system by a new one,…

Software Engineering · Computer Science 2022-10-04 Bruno Góis Mateus , Matias Martinez , Christophe Kolski

Code metamorphism refers to a computer programming exercise wherein the program modifies its own code (partial or entire) consistently and automatically while retaining its core functionality. This technique is often used for online…

Cryptography and Security · Computer Science 2024-11-05 Pooria Madani

Continuous Integration (CI) configurations often need to be migrated between services (e.g., Travis CI to GitHub Actions) as projects evolve, due to changes in service capabilities, usage limits, or service deprecation. Previous studies…

Software Engineering · Computer Science 2025-07-29 Md Nazmul Hossain , Taher A. Ghaleb

Technology mapping is a critical yet challenging stage in logic synthesis. While Large Language Models (LLMs) have been applied to generate optimization scripts, their potential for core algorithm enhancement remains untapped. We introduce…

Computational Engineering, Finance, and Science · Computer Science 2026-04-30 Rongliang Fu , Yi Liu , Qiang Xu , Tsung-Yi Ho

Large language models (LLMs) have exerted a considerable impact on diverse language-related tasks in recent years. Their demonstrated state-of-the-art performance is achieved through methodologies such as zero-shot or few-shot prompting.…

Computation and Language · Computer Science 2023-12-21 Arshad Kaji , Manan Shah

Maintenance is a critical stage in the software lifecycle, ensuring that post-release systems remain reliable, efficient, and adaptable. However, manual software maintenance is labor-intensive, time-consuming, and error-prone, which…

Software Engineering · Computer Science 2026-02-17 Zirui Chen , Xing Hu , Xin Xia , Xiaohu Yang

With the advancement of automated software engineering, research focus is increasingly shifting toward practical tasks reflecting the day-to-day work of software engineers. Among these tasks, software migration, a critical process of…

Software Engineering · Computer Science 2026-04-29 Ryo Fujii , Makoto Morishita , Kazuki Yano , Jun Suzuki

Library migration is a challenging problem, where most existing approaches rely on prior knowledge. This can be, for example, information derived from changelogs or statistical models of API usage. This paper addresses a different API…

Software Engineering · Computer Science 2020-08-28 Bruce Collie , Philip Ginsbach , Jackson Woodruff , Ajitha Rajan , Michael O'Boyle