“…For the problem of crosslanguage program translation, much work has utilized various statistical language models for tokens [23], phrases [15,24,25], or APIs [4,8,21,22,28,38,39]. A few studies also used word embedding for API mapping and migration (e.g., [12,13,26,28,35]), but our work does not need large number of manually specified parallel corpora or mapping seeds. Tools for translating code among specific languages in practice (e.g., Java2CSharp [5]) also often dependent on manually defined rules specific to the grammars of individual languages, while our approach alleviates the need of language-specific rules.…”