一句话:提出神经符号 SPF 框架,用代码分类学与三层语义金字塔支持有限范围的自顶向下代码生成。
端到端神经代码生成缺乏领域知识与软件层次意识,在项目级任务上表现不佳。论文让代码生成参与有限范围内从可表达物到可执行程序的自顶向下开发全过程,以利用大量样本、特征与知识。方法上,作者基于代码信息分类提出代码分类学,引入关联文本与代码的三层语义金字塔,以识别不同抽象层级并揭示软件层次;进而提出面向高模块化、低复杂度软件的语义金字塔框架 SPF,将生成过程分阶段并预留交互位置。评估上,论文通过构思软件开发初步应用来确认该神经符号框架,摘要未报告大规模定量结果。
Deep code generation is a topic of deep learning for software engineering (DL4SE), which adopts neural models to generate code for the intended functions. Since end-to-end neural methods lack domain knowledge and software hierarchy awareness, they tend to perform poorly w.r.t project-level tasks. To systematically explore the potential improvements of code generation, we let it participate in the whole top-down development from expressibles to executables, which is possible in limited scopes. In the process, it benefits from massive samples, features, and knowledge. As the foundation, we suggest building a taxonomy on code data, namely code taxonomy, leveraging the categorization of code information. Moreover, we introduce a three-layer semantic pyramid (SP) to associate text data and code data. It identifies the information of different abstraction levels, and thus introduces the domain knowledge on development and reveals the hierarchy of software. Furthermore, we propose a semantic pyramid framework (SPF) as the approach, focusing on software of high modularity and low complexity. SPF divides the code generation process into stages and reserves spots for potential interactions. In addition, we conceived preliminary applications in software development to confirm the neuro-symbolic framework.
DOI 原文 · arXiv · PDF(开放获取) · DBLP
@inproceedings{GuG23,
title = {Towards Top-Down Automated Development in Limited Scopes: A Neuro-Symbolic Framework from Expressibles to Executables},
author = {Jian Gu and Harald C. Gall},
booktitle = {FSE},
year = {2023},
doi = {10.1145/3611643.3613076}
}