paperbot · PL 论文追踪

全部论文 待读 收藏

P2 LitterBox: A Linter for Scratch Programs

LitterBox:Scratch 程序的 Linter
ICSE 2021 IEEE/ACM 43rd International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET)2021匹配度 2/10 · 该论文是面向 Scratch 教育编程语言的静态分析 Linter,虽然属于程序分析与开发者工具方向,但与用户核心关注的 ML/Agentic 程序静态分析、LLM 与静态分析/浮点/贝叶斯程序分析交叉均无直接关联。引用 0 inbox
Gordon Fraser, Ute Heuer, Nina Korber, Florian Obermuller, Ewald Wasmeier
crossref: 2026-09-12

AI 速览

一句话:提出 LitterBox,一个检测 Scratch 程序已知缺陷与代码坏味,并向学习者解释原因和可能误解的 Linter。

基于积木的 Scratch 编程易学有趣,但学习者常因编程误解写出含缺陷的程序,代码也常质量低、存在代码坏味,影响理解、复用与体验。本文提出 LitterBox:给定 Scratch 程序或其公开项目 ID,它会将程序与已知缺陷和代码坏味模式进行匹配检查。对每个识别的问题,LitterBox 不仅给出代码位置,还解释底层原因和可能的学习者误解。学习者可通过易用的 Web 界面查看积木代码中的错误可视化信息;研究者则可将其作为通用、开源、可扩展的 Scratch 程序静态分析框架。

问题
Scratch 等积木式程序容易上手,但学习者可能因编程误解引入缺陷,程序也常存在代码坏味和质量问题,妨碍理解、复用与学习体验。
方法
LitterBox 接收程序或公开项目 ID,按已知缺陷与代码坏味模式进行静态检查,报告问题位置、原因解释和可能的误解;同时提供面向学习者的 Web 界面和面向研究者的开源可扩展框架。
评估
摘要未报告定量实验或用户研究,主要通过工具功能、Web 界面和开源框架说明其可用性与可扩展性。
原文摘要(Abstract)

Creating programs with block-based programming languages like Scratch is easy and fun. Block-based programs can nevertheless contain bugs, in particular when learners have misconceptions about programming. Even when they do not, Scratch code is often of low quality and contains code smells, further inhibiting understanding, reuse, and fun. To address this problem, in this paper we introduce LitterBox, a linter for Scratch programs. Given a program or its public project ID, LitterBox checks the program against patterns of known bugs and code smells. For each issue identified, LitterBox provides not only the location in the code, but also a helpful explanation of the underlying reason and possible misconceptions. Learners can access LitterBox through an easy to use web interface with visual information about the errors in the block-code, while for researchers LitterBox provides a general, open source, and extensible framework for static analysis of Scratch programs.

链接与引用

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

BibTeX
@inproceedings{paperbot6251,
  title = {LitterBox: A Linter for Scratch Programs},
  author = {Gordon Fraser and Ute Heuer and Nina Korber and Florian Obermuller and Ewald Wasmeier},
  booktitle = {ICSE},
  year = {2021},
  doi = {10.1109/icse-seet52601.2021.00028}
}