Code Completion with Deep Neural Network
This project aims at improving a code completion engine with deep neural network by investigating econding and emebedding methods.
Code completion is a feature in programming editors that suggests a code fragments from a partly input program. One of the promising approaches use a statistical method, or a deep neural network, to suggest code fragments that are more likely to be typed in according to the code that has already been typed in. We propose an embedding method (which converts between program tokens and a numeral vector, which is used as inputs and outputs of a neural network) inspired by Word2Vec, and applied to a LSTM neural network with an AST-aware encoding, so that it can cope with synonyms and syntactic structure of program texts.
Publications:
- [LM19]Dongfang Li and Hidehiko Masuhara. ASTToken2Vec: An embedding method for neural code completion. In Kei Ito, editor, Proceedings of the 36th JSSST Annual Conference, pages No. 13–L. Japan Society for Software Science and Technology (JSSST), August 2019. The Student Research Award and the Best Presentation Award of the conference. [ bib | .pdf ]