English
Related papers

Related papers: Unsupervised Translation of Programming Languages

200 papers

With little to no parallel data available for programming languages, unsupervised methods are well-suited to source code translation. However, the majority of unsupervised machine translation approaches rely on back-translation, a method…

Software Engineering · Computer Science 2022-02-17 Baptiste Roziere , Jie M. Zhang , Francois Charton , Mark Harman , Gabriel Synnaeve , Guillaume Lample

A transpiler converts code from one programming language to another. Many practical uses of transpilers require the user to be able to guide or customize the program produced from a given input program. This customizability is important for…

Programming Languages · Computer Science 2023-03-07 Bo Wang , Aashish Kolluri , Ivica Nikolić , Teodora Baluta , Prateek Saxena

With the advent of new and advanced programming languages, it becomes imperative to migrate legacy software to new programming languages. Unsupervised Machine Learning-based Program Translation could play an essential role in such…

Programming Languages · Computer Science 2023-02-22 Aniketh Malyala , Katelyn Zhou , Baishakhi Ray , Saikat Chakraborty

Code translation tools (transpilers) are developed for automatic source-to-source translation. Although learning-based transpilers have shown impressive enhancement against rule-based counterparts, owing to their task-specific pre-training…

Software Engineering · Computer Science 2024-05-14 Zhen Yang , Fang Liu , Zhongxing Yu , Jacky Wai Keung , Jia Li , Shuo Liu , Yifan Hong , Xiaoxue Ma , Zhi Jin , Ge Li

We address the problem of automatic decompilation, converting a program in low-level representation back to a higher-level human-readable programming language. The problem of decompilation is extremely important for security researchers.…

Programming Languages · Computer Science 2019-05-22 Omer Katz , Yuval Olshaker , Yoav Goldberg , Eran Yahav

The problem of reversing the compilation process, decompilation, is an important tool in reverse engineering of computer software. Recently, researchers have proposed using techniques from neural machine translation to automate the process…

Cryptography and Security · Computer Science 2022-12-20 Iman Hosseini , Brendan Dolan-Gavitt

Code pre-trained models (CodePTMs) have recently demonstrated a solid capacity to process various software intelligence tasks, e.g., code clone detection, code translation, and code summarization. The current mainstream method that deploys…

Software Engineering · Computer Science 2024-05-10 Qiushi Sun , Nuo Chen , Jianing Wang , Xiang Li , Ming Gao

Translating source code from one programming language to another is a critical, time-consuming task in modernizing legacy applications and codebases. Recent work in this space has drawn inspiration from the software naturalness hypothesis…

There is growing interest in software migration as the development of software and society. Manually migrating projects between languages is error-prone and expensive. In recent years, researchers have begun to explore automatic program…

Software Engineering · Computer Science 2023-03-13 Fang Liu , Jia Li , Li Zhang

Back-translation is widely known for its effectiveness in neural machine translation when there is little to no parallel data. In this approach, a source-to-target model is coupled with a target-to-source model trained in parallel. The…

Computation and Language · Computer Science 2023-02-14 Wasi Uddin Ahmad , Saikat Chakraborty , Baishakhi Ray , Kai-Wei Chang

Cross-lingual transfer is a leading technique for parsing low-resource languages in the absence of explicit supervision. Simple `direct transfer' of a learned model based on a multilingual input encoding has provided a strong benchmark.…

Computation and Language · Computer Science 2021-01-28 Kemal Kurniawan , Lea Frermann , Philip Schulz , Trevor Cohn

A compilator is a program which is development in a programming language that read a file known as source. After this file have to translate and have to convert in other program known as object or to generate a exit. The best way for to…

Other Computer Science · Computer Science 2012-05-09 Jose Texier , Bermudez Manuel

In software reverse engineering, decompilation is the process of recovering source code from binary files. Decompilers are used when it is necessary to understand or analyze software for which the source code is not available. Although…

Software Engineering · Computer Science 2021-02-25 Javier Escalada , Ted Scully , Francisco Ortin

The TransCoder system translates source code between Java, C++, and Python 3. The test set that was used to evaluate its quality is missing important features of Java, including the ability to define and use classes and the ability to call…

Computation and Language · Computer Science 2020-08-04 Ernest Davis

Software version migration and program translation are an important and costly part of the lifecycle of large codebases. Traditional machine translation relies on parallel corpora for supervised translation, which is not feasible for…

Software Engineering · Computer Science 2023-10-19 Yufan Huang , Mengnan Qi , Yongqiang Yao , Maoquan Wang , Bin Gu , Colin Clement , Neel Sundaresan

Many software projects implement APIs and algorithms in multiple programming languages. Maintaining such projects is tiresome, as developers have to ensure that any change (e.g., a bug fix or a new feature) is being propagated, timely and…

Software Engineering · Computer Science 2023-09-13 Jiyang Zhang , Pengyu Nie , Junyi Jessy Li , Milos Gligoric

Software migration is garnering increasing attention with the evolution of software and society. Early studies mainly relied on handcrafted translation rules to translate between two languages, the translation process is error-prone and…

Software Engineering · Computer Science 2024-07-11 Xin Yin , Chao Ni , Tien N. Nguyen , Shaohua Wang , Xiaohu Yang

Recently, the automated translation of source code from one programming language to another by using automatic approaches inspired by Neural Machine Translation (NMT) methods for natural languages has come under study. However, such…

In this paper, we leverage low-level compiler intermediate representations (IR) to improve code translation. Traditional transpilers rely on syntactic information and handcrafted rules, which limits their applicability and produces…

Programming Languages · Computer Science 2023-04-25 Marc Szafraniec , Baptiste Roziere , Hugh Leather , Francois Charton , Patrick Labatut , Gabriel Synnaeve

Large language models are becoming increasingly practical for translating code across programming languages, a process known as $transpiling$. Even though automated transpilation significantly boosts developer productivity, a key concern is…

Software Engineering · Computer Science 2024-01-31 Hasan Ferit Eniser , Valentin Wüstholz , Maria Christakis
‹ Prev 1 2 3 10 Next ›