  The application of deep learning techniques in software engineering becomes
increasingly popular. One key problem is developing high-quality and
easy-to-use source code representations for code-related tasks. The research
community has acquired impressive results in recent years. However, due to the
deployment difficulties and performance bottlenecks, seldom these approaches
are applied to the industry. In this paper, we present xASTNN, an eXtreme
Abstract Syntax Tree (AST)-based Neural Network for source code representation,
aiming to push this technique to industrial practice. The proposed xASTNN has
three advantages. First, xASTNN is completely based on widely-used ASTs and
does not require complicated data pre-processing, making it applicable to
various programming languages and practical scenarios. Second, three
closely-related designs are proposed to guarantee the effectiveness of xASTNN,
including statement subtree sequence for code naturalness, gated recursive unit
for syntactical information, and gated recurrent unit for sequential
information. Third, a dynamic batching algorithm is introduced to significantly
reduce the time complexity of xASTNN. Two code comprehension downstream tasks,
code classification and code clone detection, are adopted for evaluation. The
results demonstrate that our xASTNN can improve the state-of-the-art while
being faster than the baselines.

Software Engineering;Artificial Intelligence