Using Large Language Models to Enhance Programming Error Messages
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.
Code (0)
등록된 구현이 없습니다.
Similar Papers 제목 키워드 기반
Not the Silver Bullet: LLM-enhanced Programming Error Messages are Ineffective in Practice
The sudden emergence of large language models (LLMs) such as ChatGPT has had a disruptive impact throughout the computing education community. LLMs have been shown to excel at producing correct code to CS1 and CS2 proble…
Enhancing Programming Error Messages in Real Time with Generative AI
Generative AI is changing the way that many disciplines are taught, including computer science. Researchers have shown that generative AI tools are capable of solving programming problems, writing extensive blocks of cod…
DeepFix: Fixing Common C Language Errors by Deep Learning
The problem of automatically fixing programming errors is a very active research topic in software engineering. This is a challenging problem as fixing even a single error may require analysis of the entire program. In p…
Deep LearningProgram RepairDeep Reinforcement Learning for Programming Language Correction
Novice programmers often struggle with the formal syntax of programming languages. To assist them, we design a novel programming language correction framework amenable to reinforcement learning. The framework allows an a…
Deep Reinforcement LearningMachine TranslationProgram Repairreinforcement-learning+3SYNFIX: Automatically Fixing Syntax Errors using Compiler Diagnostics
Beginning programmers struggle with the complex grammar of modern programming languages like Java, and make lot of syntax errors. The diagnostic syntax error messages from compilers and IDEs are sometimes useful, but oft…
BIG-bench Machine LearningDiagnosticMulti-Label ClassificationMUlTI-LABEL-ClASSIFICATION+1