Synthesizing a Progression of Subtasks for Block-Based Visual Programming Tasks
Not on the map. Why?
Abstract (arXiv)
Block-based visual programming environments play an increasingly important role in introducing computing concepts to K-12 students. In recent years, they have also gained popularity in neuro-symbolic AI, serving as a benchmark to evaluate general problem-solving and logical reasoning skills. The open-ended and conceptual nature of these visual programming tasks make them challenging, both for state-of-the-art AI agents as well as for novice programmers. A natural approach to providing assistance for problem-solving is breaking down a complex task into a progression of simpler subtasks; however, this is not trivial given that the solution codes are typically nested and have non-linear execution behavior. In this paper, we formalize the problem of synthesizing such a progression for a given reference block-based visual programming task. We propose a novel synthesis algorithm that generates a progression of subtasks that are high-quality, well-spaced in terms of their complexity, and solving this progression leads to solving the reference task. We show the utility of our synthesis algorithm in improving the efficacy of AI agents (in this case, neural program synthesizers) for solving tasks in the Karel programming environment. Then, we conduct a user study to demonstrate that our synthesized progression of subtasks can assist a novice programmer in solving tasks in the Hour of Code: Maze Challenge by Code-dot-org.
Key facts. Cited by 1 paper in the map (data through 7 Oct 2026). Builds on 14 of its 43 references that are in the map. First posted on arXiv 27 May 2023.
Builds on
14 of 43 references.
References · 14
- 2021Program Synthesis with Large Language Modelscited by 3,509
- 2022Competition-Level Code Generation with AlphaCodecited by 1,427
- 2021CodeNet: A Large-Scale AI for Code Dataset for Learning a Diversity of Coding Taskscited by 199
- 2016DeepCoder: Learning to Write Programscited by 145
- 2017RobustFill: Neural Program Learning under Noisy I/Ocited by 124
- 2018Leveraging Grammar and Reinforcement Learning for Neural Program Synthesiscited by 83
- 2021Replacing Rewards with Examples: Example-Based Policy Search via Recursive Classificationcited by 38
- 2021Programming Puzzlescited by 25
- 2021Reinforcement Learning for Education: Opportunities and Challengescited by 25
- 2020Synthesizing Tasks for Block-based Programmingcited by 19
- 2018Zero Shot Learning for Code Education: Rubric Sampling with Deep Learning Inferencecited by 16
- 2023Adaptive Scaffolding in Block-Based Programming via Synthesizing New Tasks as Pop Quizzescited by 10
Built on by
Citing papers per year: 2023: 1.
1 paper.
- 2023Evaluating ChatGPT and GPT-4 for Visual Programmingcited by 13
- 2023Evaluating ChatGPT and GPT-4 for Visual Programming30 Jul 2023
Similar, not cited
Close in wording, no citation either way
- 2023Neural Task Synthesis for Visual Programming
- 2023De-fine: Decomposing and Refining Visual Programs with Auto-Feedback
- 2022Visual Programming: Compositional visual reasoning without training
- 2026TurtleAI: Benchmarking Multimodal Models for Visual Programming in Turtle Graphics
- 2025GenVP: Generating Visual Puzzles with Contrastive Hierarchical VAEs
- 2026V-Gym: Enhancing Agentic Visual Reasoning via Skill-Data Co-Evolution
- 2023Learning Differentiable Logic Programs for Abstract Visual Reasoning
- 2023GENOME: GenerativE Neuro-symbOlic visual reasoning by growing and reusing ModulEs