ASTSDL: predicting the functionality of incomplete programming code via an AST-sequence-based deep learning model - Yu, Yaoshen; Huang, Zhiqiu; Shen, Guohua; Li, Weiwei; Shao, Yichao (Science China. Information sciences, 2024)
Code recommendation systems have been widely used in helping developers implement unfamiliar programming tasks. Many existing code recommenders or code search engines can retrieve relevant code rapidly with high accuracy, however, they cannot recommend any code outside similar ones. We propose an approach to predict the functionality of incomplete programming code by using syntactical information, and providing a list of potential functionalities to guess what the developers want, in order to increase the diversity of recommendations. In this paper, we propose a deep learning model called ASTSDL, which uses a sequence-based representation of source code to predict functionality. We extract syntactical information from the abstract syntax tree (AST) of the source code, apply a deep learning model to capture the syntactic and sequential information, and predict the functionality of the source code fragments. The experimental results demonstrate that ASTSDL can effectively predict the functionality of incomplete code with an accuracy above 84% in the top-10 list, even if there is only half of the complete code.