Using Large Language Models to Enhance Programming Error Messages

Authors: Juho Leinonen, Arto Hellas, Sami Sarsa, Brent Reeves, Paul Denny, James Prather, Brett A. Becker

Submitted to arXiv on 20 Oct. 2022
Abstract

A key part of learning to program is learning to understand programming error messages. They can be hard to interpret and identifying the cause of errors can be time-consuming. One factor in this challenge is that the messages are typically intended for an audience that already knows how to program, or even for programming environments that then use the information to highlight areas in code. Researchers have been working on making these errors more novice friendly since the 1960s, however progress has been slow. The present work contributes to this stream of research by using large language models to enhance programming error messages with explanations of the errors and suggestions on how to fix the error. Large language models can be used to create useful and novice-friendly enhancements to programming error messages that sometimes surpass the original programming error messages in interpretability and actionability. These results provide further evidence of the benefits of large language models for computing educators, highlighting their use in areas known to be challenging for students. We further discuss the benefits and downsides of large language models and highlight future streams of research for enhancing programming error messages.

The papers around it, by date and closeness

Higher is closer to this paper; left is older. Lines join papers close to each other: groups of lines are sub-topics. Select a point to see why it is there. Back to the summary of this paper

Closest papers Prior work it builds on Papers that cite it

Papers around this one

Ranked by how close their title and abstract are to this paper’s. Select some to read them together.

Closest papers

  1. Close Broader context
    Why and When LLM-Based Assistants Can Go Wrong: Investigating the Effectiveness of Prompt-Based Interactions for Software Help-Seeking
    Anjali Khurana, Hari Subramonyam, Parmit K Chilana · 2024 · Human-Computer Interaction · Not summarized yet

    The study tests LLM-based software help-seeking assistants, whereas this paper uses LLMs to explain programming errors and suggest fixes.

    Abstract

    Large Language Model (LLM) assistants, such as ChatGPT, have emerged as potential alternatives to search methods for helping users navigate complex, feature-rich software. LLMs use vast training data from domain-specific texts, software manuals, and code repositories to mimic human-like interactions, offering tailored assistance, including step-by-step instructions. In this work, we investigated LLM-generated software guidance through a within-subject experiment with 16 participants and follow-up interviews. We compared a baseline LLM assistant with an LLM optimized for particular software contexts, SoftAIBot, which also offered guidelines for constructing appropriate prompts. We assessed ta…

  2. Close Broader context
    Beyond Code Generation: LLM-supported Exploration of the Program Design Space
    J. D. Zamfirescu-Pereira, Eunice Jun, Michael Terry et al. · 2025 · Human-Computer Interaction · AI summary available

    The work uses an IDE to support exploration of program designs, rather than enhancing programming error messages for novices.

    Abstract

    In this work, we explore explicit Large Language Model (LLM)-powered support for the iterative design of computer programs. Program design, like other design activity, is characterized by navigating a space of alternative problem formulations and associated solutions in an iterative fashion. LLMs are potentially powerful tools in helping this exploration; however, by default, code-generation LLMs deliver code that represents a particular point solution. This obscures the larger space of possible alternatives, many of which might be preferable to the LLM's default interpretation and its generated code. We contribute an IDE that supports program design through generating and showing new ways t…

  3. Close Another approach to the problem
    Large Language Models (GPT) for automating feedback on programming assignments
    Maciej Pankiewicz, Ryan S. Baker · 2023 · Human-Computer Interaction · Not summarized yet

    The study uses GPT-3.5 to generate personalized hints for programming assignments, while this paper uses LLMs to explain errors and propose fixes.

    Abstract

    Addressing the challenge of generating personalized feedback for programming assignments is demanding due to several factors, like the complexity of code syntax or different ways to correctly solve a task. In this experimental study, we automated the process of feedback generation by employing OpenAI's GPT-3.5 model to generate personalized hints for students solving programming assignments on an automated assessment platform. Students rated the usefulness of GPT-generated hints positively. The experimental group (with GPT hints enabled) relied less on the platform's regular feedback but performed better in terms of percentage of successful submissions across consecutive attempts for tasks, …

  4. Close Broader context
    Measuring Progress on Scalable Oversight for Large Language Models
    Samuel R. Bowman, Jeeyoon Hyun, Ethan Perez et al. · 2022 · Human-Computer Interaction · Not summarized yet

    The paper develops empirical approaches to supervising powerful AI systems, not to helping novice programmers interpret errors.

    Abstract

    Developing safe and useful general-purpose AI systems will require us to make progress on scalable oversight: the problem of supervising systems that potentially outperform us on most skills relevant to the task at hand. Empirical work on this problem is not straightforward, since we do not yet have systems that broadly exceed our abilities. This paper discusses one of the major ways we think about this problem, with a focus on how to turn it into one that can be productively studied empirically. We first present an experimental design centered on choosing tasks for which human specialists succeed but unaided humans and current general AI systems fail. We then present a proof-of-concept expe…

  5. Close Same question
    Students' Perceptions and Preferences of Generative Artificial Intelligence Feedback for Programming
    Zhengdong Zhang, Zihan Dong, Yang Shi et al. · 2023 · Human-Computer Interaction · AI summary available

    The study examines LLM-generated feedback for introductory programming, focusing on students’ perceptions and prompt formats rather than error-message enhancements.

    Abstract

    The rapid evolution of artificial intelligence (AI), specifically large language models (LLMs), has opened opportunities for various educational applications. This paper explored the feasibility of utilizing ChatGPT, one of the most popular LLMs, for automating feedback for Java programming assignments in an introductory computer science (CS1) class. Specifically, this study focused on three questions: 1) To what extent do students view LLM-generated feedback as formative? 2) How do students see the comparative affordances of feedback prompts that include their code, vs. those that exclude it? 3) What enhancements do students suggest for improving AI-generated feedback? To address these ques…

  6. Related Broader context
    Can ChatGPT Play the Role of a Teaching Assistant in an Introductory Programming Course?
    Anishka, Atharva Mehta, Nipun Gupta et al. · 2023 · Human-Computer Interaction · AI summary available

    The paper evaluates ChatGPT as an introductory programming teaching assistant, including feedback, grading, and assignment-solving functions.

    Abstract

    The emergence of Large language models (LLMs) is expected to have a major impact on education. This paper explores the potential of using ChatGPT, an LLM, as a virtual Teaching Assistant (TA) in an Introductory Programming Course. We evaluate ChatGPT's capabilities by comparing its performance with that of human TAs in some TA functions. The TA functions which we focus on include (1) solving programming assignments, (2) grading student code submissions, and (3) providing feedback to undergraduate students in an introductory programming course. Firstly, we investigate how closely ChatGPT's solutions align with those submitted by students. This analysis goes beyond code correctness and also co…

  7. Related Same method, another problem
    Evaluating the Efficacy of Interactive Language Therapy Based on LLM for High-Functioning Autistic Adolescent Psychological Counseling
    Yujin Cho, Mingeon Kim, Seojin Kim et al. · 2023 · Human-Computer Interaction · AI summary available

    The study evaluates LLM-generated interactive language support in counseling, applying LLMs to a domain other than programming education.

    Abstract

    This study investigates the efficacy of Large Language Models (LLMs) in interactive language therapy for high-functioning autistic adolescents. With the rapid advancement of artificial intelligence, particularly in natural language processing, LLMs present a novel opportunity to augment traditional psychological counseling methods. This research primarily focuses on evaluating the LLM's ability to engage in empathetic, adaptable, and contextually appropriate interactions within a therapeutic setting. A comprehensive evaluation was conducted by a panel of clinical psychologists and psychiatrists using a specially developed scorecard. The assessment covered various aspects of the LLM's perform…

  8. Related Same method, another problem
    Ask and You Shall Receive (a Graph Drawing): Testing ChatGPT's Potential to Apply Graph Layout Algorithms
    Sara Di Bartolomeo, Giorgio Severi, Victor Schetinger et al. · 2023 · Human-Computer Interaction · Not summarized yet

    The work tests ChatGPT on graph-drawing algorithms, applying an LLM to a technical task rather than explaining programming errors.

    Abstract

    Large language models (LLMs) have recently taken the world by storm. They can generate coherent text, hold meaningful conversations, and be taught concepts and basic sets of instructions - such as the steps of an algorithm. In this context, we are interested in exploring the application of LLMs to graph drawing algorithms by performing experiments on ChatGPT. These algorithms are used to improve the readability of graph visualizations. The probabilistic nature of LLMs presents challenges to implementing algorithms correctly, but we believe that LLMs' ability to learn from vast amounts of data and apply complex operations may lead to interesting graph drawing results. For example, we could en…

How are these papers found?

We compare the title and abstract of this paper with those of every paper summarized on this site, and with the papers Semantic Scholar recommends, those it cites and those citing it (for a much-cited paper, its most recent citations and, from OpenAlex, the most cited ones). Among the prior work and the follow-ups, the papers that use each other in depth, a method it uses and the much-cited follow-ups come a little higher. The levels (very close, close, related) come from the similarity of the texts, not from a judgment of quality; * marks a paper without an abstract, compared by its title. The sentence under a paper is written by an AI from the two abstracts: check it in the papers. A paper marked not relevant by three readers leaves the list.

For now only among the papers summarized on this site: search again to add the prior work, the follow-ups and Semantic Scholar’s recommendations.