一句话:提出语义数据差异这一符号表示,结合静态分析与执行后语义,生成能说明代码对数据做了什么感知运行的文档。
随着 AI 辅助软件工程工具进入软件生命周期,自动代码文档日益重要。然而现有方法大多只利用代码的静态特征,忽视了其动态行为,在数据密集型编程环境中尤为突出——这类代码的含义与它对数据的影响紧密相关。本文提出通过「语义数据差异」(semantic data differences)来实现执行感知的代码文档:这是一种结构化的符号表示,刻画代码执行如何变换数据,从而把代码理解从语法与词法特征扩展到运行时语义。作者提出一个多模态建模框架,将静态代码分析与执行后语义结合起来,并设计了一条数据采集流水线:执行真实世界的数据密集型 notebook,记录变量级变化,并将其抽象为语义数据差异文法,用于训练与评估。该博士研究尚在进行中,目标是让文档系统不仅描述代码怎么写,也描述代码对数据做了什么,从而推动更透明、可复现、智能的数据中心软件。
Automated code documentation has gained increasing importance as AI-assisted software engineering tools become integrated into the software lifecycle. However, most approaches rely solely on static features of code, overlooking its dynamic behavior—particularly in data-centric programming environments where code meaning is deeply tied to its effect on data. This research explores how execution-aware code documentation can be achieved by introducing semantic data differences, a structured symbolic representation of how code execution transforms data. By capturing these runtime semantics, this work aims to extend code understanding beyond syntax and lexical features. I propose a multimodal modeling framework that combines static code analysis with post-execution semantics. In support of this framework, I design a data collection pipeline that executes real-world data-centric notebooks, logs variable-level changes, and abstracts them into a grammar of semantic data differences for training and evaluation. This ongoing doctoral research aims to enable documentation systems that describe not only how code is written, but also what code does to data—a step toward more transparent, reproducible, and intelligent data-centric software.