paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Supporting the Comprehension of Data Analysis Scripts

支持数据分析脚本的理解
FSE Proceedings of the 34th ACM International Conference on the Foundations of Software Engineering2026匹配度 3/10 · 论文属于程序分析与开发者工具方向,关注 R 数据分析脚本的静态数据流分析和可视化理解,但与用户核心关注的 LLM/Agentic 程序静态分析、AI 辅助静态分析/形式化验证、浮点程序分析及贝叶斯程序分析均无直接交集。引用 0 inbox
Florian Sihler, Oliver Gerstl, Lars Pfrenger, Julian Schubert, Matthias Tichy
crossref: 2026-09-12dblp: 2026-09-12arxiv: 2026-09-12

AI 速览

一句话:提出集成于 R 数据分析 IDE 的 flowR 工具,通过静态数据流分析与交互可视化帮助理解脚本。

数据分析脚本常用于数据清洗与可视化,但研究显示它们往往难以理解和维护,影响可复现性与复用,且缺乏工具支持。本文面向 R 语言提出 flowR,作为 Positron 和 VS Code 的扩展。flowR 在已有静态后向程序切片器基础上,提供脚本概览、交互式图可视化、linting 与内联值标注。其核心是增量分析:交织过程间数据流和控制流分析来构建数据流图,并纳入 R 的动态与探索性特性;同时提供插件系统与接口以集成新分析或自定义可视化。对真实项目,计算完整数据流图平均耗时 576 ms,支持近实时反馈,从而帮助数据分析者理解脚本。

问题
R 等数据分析脚本常难以理解和维护,缺乏工具支持,阻碍可复现性与复用。
方法
提出 flowR:作为 Positron/VS Code 的 R 扩展,增量交织过程间数据流与控制流分析构建数据流图,并集成切片、概览、交互可视化、linting 和内联值标注。
评估
在真实 R 项目上测量完整数据流图构建时间,平均 576 ms,表明可实现近实时反馈;同时提供演示视频、源码与 Docker 镜像。
原文摘要(Abstract)

A lot of research relies on data analysis scripts to process, clean, and visualize data. However, recent studies show that these scripts are often hard to comprehend and maintain, hindering reproducibility and reuse, accompanied by a lack of tool support for handling such scripts. In this work, we focus on the R programming language, addressing this problem by presenting flowR as an extension for the common data analysis IDEs Positron and VS Code. Alongside a previously presented static backward program slicer, flowR provides an overview of data analysis scripts, interactive graph visualizations, linting, and inline value annotations to support data analysts. FlowR incrementally analyzes R projects by intertwining interprocedural data- and control-flow analyses to build a comprehensive dataflow graph, incorporating R's dynamic and explorative features. Additionally, flowR offers a plugin system and interfaces, allowing the integration of further analyses, such as new linting rules or custom visualizations. Requiring an average of 576 ms to calculate the full dataflow graph of real-world projects, this enables near real-time feedback. The demonstration video is available at https://youtu.be/hJzr-r-NmMg. For the full source code and extensive documentation, refer to https://github.com/flowr-analysis/flowr. To try the docker image, use docker run –rm-it eagleoutice/flowr.

链接与引用

DOI 原文 · arXiv · PDF(开放获取) · DBLP

BibTeX
@inproceedings{abs-2604-15963,
  title = {Supporting the Comprehension of Data Analysis Scripts},
  author = {Florian Sihler and Oliver Gerstl and Lars Pfrenger and Julian Schubert and Matthias Tichy},
  booktitle = {FSE},
  year = {2026},
  doi = {10.1145/3803437.3806402}
}