C3PO: A Lightweight Copying Mechanism for Translating Pseudocode to Code
Vishruth Veerendranath, Vibha Masti, Prajwal Anagani, Mamatha Hr
Abstract
Writing computer programs is a skill that remains inaccessible to most due to the barrier of programming language (PL) syntax. While large language models (LLMs) have been proposed to translate natural language pseudocode to PL code, they are costly in terms of data and compute. We propose a lightweight alternative to LLMs that exploits the property of code wherein most tokens can be simply copied from the pseudocode. We divide the problem into three phases: Copy, Generate, and Combine. In the Copy Phase, a binary classifier is employed to determine and mask the pseudocode tokens that can be directly copied into the code. In the Generate Phase, a Sequence-to-Sequence model is used to generate the masked PL code equivalent. In the Combine Phase, the generated sequence is combined with the tokens that the Copy Phase had masked. We show that our C3PO models achieve similar performance to non-C3PO models while reducing the computational cost of training as well as the vocabulary sizes.- Anthology ID:
- 2022.aacl-srw.7
- Volume:
- Proceedings of the 2nd Conference of the Asia-Pacific Chapter of the Association for Computational Linguistics and the 12th International Joint Conference on Natural Language Processing: Student Research Workshop
- Month:
- November
- Year:
- 2022
- Address:
- Online
- Editors:
- Yan Hanqi, Yang Zonghan, Sebastian Ruder, Wan Xiaojun
- Venues:
- AACL | IJCNLP
- SIG:
- Publisher:
- Association for Computational Linguistics
- Note:
- Pages:
- 47–53
- Language:
- URL:
- https://aclanthology.org/2022.aacl-srw.7
- DOI:
- Cite (ACL):
- Vishruth Veerendranath, Vibha Masti, Prajwal Anagani, and Mamatha Hr. 2022. C3PO: A Lightweight Copying Mechanism for Translating Pseudocode to Code. In Proceedings of the 2nd Conference of the Asia-Pacific Chapter of the Association for Computational Linguistics and the 12th International Joint Conference on Natural Language Processing: Student Research Workshop, pages 47–53, Online. Association for Computational Linguistics.
- Cite (Informal):
- C3PO: A Lightweight Copying Mechanism for Translating Pseudocode to Code (Veerendranath et al., AACL-IJCNLP 2022)
- PDF:
- https://preview.aclanthology.org/nschneid-patch-3/2022.aacl-srw.7.pdf