paperbot · PL 论文追踪

全部论文 待读 收藏

P2 An Integrated Program Analysis Framework for Graduate Courses in Programming Languages and Software Engineering

一个面向程序设计语言与软件工程研究生课程的集成程序分析框架
ASE 2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)2023匹配度 1/10 · 论文聚焦于研究生课程中程序分析、验证与测试的教学框架,核心贡献是教学工具与游戏化学习体验,而非静态分析/形式化验证的新方法、LLM 与程序分析的交叉、浮点程序分析或贝叶斯程序分析。虽然涉及程序分析相关技术,但研究目标与用户的研究方向几乎无关。引用 0 inbox
Prantik Chatterjee, Pankaj Kumar Kalita, Sumit Lahiri, Sujit Kumar Muduli, Vishal Singh, Gourav Takhar, Subhajit Roy
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:提出教学用集成程序分析框架 Chiron,以游戏化方式帮助研究生学习分析、验证与测试,并通过课程调查验证其有效性。

程序分析、验证与测试是程序语言和软件工程研究生课程的重要主题,但教学需要兼顾理论理解与工具实践。Chiron 是为此设计的专用教学框架:代码规模小、统一中间表示、模块化架构便于插入新算法,并采用“乌龟冒险”式游戏化语言。它集成数据流分析引擎(驱动编译优化)、抽象解释验证引擎、符号执行引擎、模糊测试与演化测试生成器,以及基于频谱的统计缺陷定位模块。动画展示乌龟移动以帮助理解概念,详细日志辅助助教评分。Chiron 已在两轮研究生课程中使用;问卷调查显示所有学生一致认为它极有帮助并推荐用于类似课程。

问题
如何为程序设计语言与软件工程研究生课程提供一个统一、可理解且可扩展的平台,以教授程序分析、验证与测试的理论和实践。
方法
提出 Chiron:小代码库、统一 IR、模块化架构、游戏化“乌龟”语言,集成数据流分析、抽象解释、符号执行、模糊测试、演化测试生成和频谱缺陷定位,并提供动画与日志。
评估
在两轮研究生课程中实际使用,并通过问卷评估;所有学生认为 Chiron 对学习极有帮助,并推荐在类似课程中使用。
原文摘要(Abstract)

Program analysis, verification and testing are important topics in programming languages and software engineering. They aim to produce engineers who are not only capable of empirically evaluating but, also formally reasoning on the correctness of software systems. We propose a specialized framework, Chiron, designed to teach graduate-level courses on these topics. Chiron has a small code base for easy understanding, uses a unified intermediate representation across all its analysis modules, maintains a modular architecture for plugging in new algorithms and uses a “fun” programming language to provide a gamified experience. Currently, it packages a dataflow analysis engine for driving compiler optimizations, an abstract interpretation engine for verification, a symbolic execution engine, a fuzzer and an evolutionary test generator for program testing, and a spectrum based statistical bug localization module. Within Chiron, program analysis tasks are posed in an unconventional setting (as adventures of a turtle) to provide a gamified experience; the accompanying animations (showing the movements of the turtle) allow the student to understand the underlying concepts better, and the detailed logs allow the teaching assistants in their grading activities. Chiron has been used in two offerings of a graduate level course on program analysis, verification and testing. In response to our survey questionnaire, all the students unanimously held the opinion that Chiron was extremely helpful in aiding their learning, and recommended its use in similar courses.

链接与引用

DOI 原文 · DBLP

BibTeX
@inproceedings{ChatterjeeKLMSTR23,
  title = {An Integrated Program Analysis Framework for Graduate Courses in Programming Languages and Software Engineering},
  author = {Prantik Chatterjee and Pankaj Kumar Kalita and Sumit Lahiri and Sujit Kumar Muduli and Vishal Singh and Gourav Takhar and Subhajit Roy},
  booktitle = {ASE},
  year = {2023},
  doi = {10.1109/ase56229.2023.00101}
}