Publication Type

Conference Proceeding Article

Version

publishedVersion

Publication Date

5-2019

Abstract

Programmers often need to migrate programs from one language or platform to another in order to implement functionality, instead of rewriting the code from scratch. However, most techniques proposed to identify API mappings across languages and facilitate automated program translation require manually curated parallel corpora that contain already mapped API seeds or functionally-equivalent code using the APIs in two different languages so that the techniques can have an anchor to map APIs. To alleviate the need of curating parallel data and to generalize the applicability of program translation techniques, we develop a new automated approach for identifying API mappings across languages based on the idea of unsupervised domain adaption via Generative Adversarial Network (GAN) and an additional refinement procedure that can transform two vector spaces to align the API vectors in the two spaces without the need of manually provided anchors. We show that our approach can identify API mappings more accurately than Api2Api [25] without the need of curated parallel seeds.

Discipline

Programming Languages and Compilers | Software Engineering

Publication

ICSE '19: Proceedings of the 41st International Conference on Software Engineering: Companion Proceedings, Montreal, Canada, May 25-31

First Page

123

Last Page

125

ISBN

9781728117645

Identifier

10.1109/ICSE-Companion.2019.00054

Publisher

ACM

City or Country

New York

Additional URL

https://doi.org/10.1109/ICSE-Companion.2019.00054

Share

COinS