Programming is increasingly taught using dedicated block-based programming environments such as Scratch. While the use of blocks instead of text prevents syntax errors, learners can still make semantic mistakes implying a need for feedback and help. Since teachers may be overwhelmed by help requests in a classroom, may not have the required programming education themselves, and may simply not be available in independent learning scenarios, automated hint generation is desirable. Automated program repair can provide the foundation for automated hints, but relies on multiple assumptions: (1) Program repair usually aims to produce localized patches for fixing single bugs, but learners may fundamentally misunderstand programming concepts and tasks or request help for substantially incomplete programs. (2) Automated tests are required to identify broken statements and to validate generated patches, but block-based programming environments do not come with support for automated tests. (3) The plastic surgery hypothesis assumes that the code necessary for repairs already exists in the codebase. Block-based programs tend to be small and may lack this necessary redundancy. In order to study whether automated program repair of block-based programs is nevertheless feasible, in this paper we introduce, to the best of our knowledge, the first automated program repair approach for Scratch programs based on evolutionary search. Empirical evaluation on a set of real learners’ programs demonstrates that the repair can effectively improve and fix learners’ programs, but block-based programs nevertheless pose fundamental challenges: The system-test like nature of automated tests for small block-based programs challenges fault localization, the overall efficiency of the repair, and the suitability of automatically generated tests. While the plastic surgery hypothesis can be recovered in a learning scenario using model and student solutions, the repair faces fundamentally incomplete and broken programs rather than single bugs.
Mon 23 JunDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
16:00 - 18:00 | RepairsResearch Papers / Journal First at Andromeda Chair(s): Michael Pradel University of Stuttgart | ||
16:00 20mTalk | HornBro: Homotopy-like Method for Automated Quantum Program Repair Research Papers Siwei Tan Zhejiang University, Liqiang Lu Zhejiang University, Debin Xiang Zhejiang University, Tianyao Chu Zhejiang University, Congliang Lang Zhejiang University, Jintao Chen Zhejiang University, Xing Hu Zhejiang University, Jianwei Yin Zhejiang University DOI | ||
16:20 20mTalk | RePurr: Automated Repair of Block-Based Learners' Programs Research Papers DOI | ||
16:40 20mTalk | Demystifying Memorization in LLM-based Program Repair via a General Hypothesis Testing Framework Research Papers Jiaolong Kong Singapore Management University, Xiaofei Xie Singapore Management University, Shangqing Liu Nanyang Technological University DOI | ||
17:00 20mTalk | IRepair: An Intent-Aware Approach to Repair Data-Driven Errors in Large Language Models Research Papers Sayem Mohammad Imtiaz Iowa State University, Astha Singh Dept. of Computer Science, Iowa State University, Fraol Batole Tulane University, Hridesh Rajan Tulane University DOI | ||
17:20 20mTalk | Repairs and Breaks Prediction for Deep Neural Networks Journal First Yuta Ishimoto Kyushu University, Masanari Kondo Kyushu University, Lei Ma The University of Tokyo & University of Alberta, Naoyasu Ubayashi Waseda University, Yasutaka Kamei Kyushu University | ||
17:40 20mTalk | Element-Based Automated DNN Repair with Fine-Tuned Masked Language Model Research Papers Xu Wang Beihang University; Zhongguancun Laboratory; Ministry of Education, Mingming Zhang Beihang University, Xiangxin Meng Beihang University, Jian Zhang Nanyang Technological University, Yang Liu Nanyang Technological University, Chunming Hu Beihang University DOI |
Andromeda is located close to the restaurant and the bar, at the end of the corridor on the side of the bar.
From the registration desk, go towards the restaurant, turn left towards the bar, walk until the end of the corridor.