This paper introduces a method for Large Language Models (LLM) to produce enhanced compiler error explanations, in simple language, within our Debugging C Compiler (DCC). It is well documented that compiler error messages have been known to present a barrier for novices learning how to program. Although our initial use of DCC in introductory programming (CS1) has been instrumental in teaching C to novice programmers by providing safeguards to commonly occurring errors and translating the usually cryptic compiler error messages at both compile- and run-time, we proposed that incorporating LLM-generated explanations would further enhance the learning experience for novice programmers. Through an expert evaluation, we observed that LLM-generated explanations for compiler errors were conceptually accurate in 90% of compile-time errors, and 75% of run-time errors. Additionally, the new DCC-help tool has been increasingly adopted by students, with an average of 1047 unique runs per week, demonstrating a promising initial assessment of using LLMs to complement compiler output to enhance programming education for beginners. We release our tool as open-source to the community.
翻译:本文介绍了一种方法,通过在我们的调试C编译器(DCC)中使用大语言模型(LLM)生成用简单语言表达的增强型编译器错误解释。已有充分文献表明,编译器错误信息对初学编程的新手构成障碍。尽管我们最初在入门编程课程(CS1)中使用DCC,通过为常见错误提供防护措施并翻译编译时和运行时通常晦涩难懂的编译器错误信息,在教授C语言方面发挥了重要作用,但我们提出,融入LLM生成的解释将进一步增强初学者的学习体验。通过专家评估,我们发现LLM为编译器错误生成的解释在编译时错误中实现了90%的概念准确性,在运行时错误中达到了75%。此外,新的DCC-help工具已被学生广泛采用,平均每周有1047次独立运行,这初步表明使用LLM补充编译器输出以增强初学者的编程教育具有良好前景。我们将该工具作为开源资源发布给社区。