Chrome Extension
WeChat Mini Program
Use on ChatGLM

Unexpected Tokens: A Review of Programming Error Messages and Design Guidelines for the Future

Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science Education(2019)

Cited 11|Views52
No score
Abstract
Diagnostic messages generated by compilers and interpreters such as syntax error messages have been researched for decades. Unfortunately these messages which include error, warning, and runtime messages, present substantial difficulty and could be more effective, particularly for novices. Recent years have seen increased number of papers in the area including studies on the effectiveness of these messages, improving or enhancing them, and their usefulness as a part of programming process data that can be used to predict student performance. Despite this increased interest, the long history of literature is quite scattered and has not been brought together in any digestible form. We argue that in order to help the community proceed with more work on diagnostic messages, the literature needs to be presented in a state-of-the-art report. In addition we will synthesize and present the existing evidence for these messages including the difficulties they present and their effectiveness. We will also formulate a set of guidelines based on this evidence that can be used when designing or enhancing diagnostic messages. This work can serve as a starting point for those who wish to conduct research on such messages, those who wish to design better messages or those that aim to measure their effectiveness, more effectively.
More
Translated text
Key words
compiler error messages, cs1, design guidelines, diagnostic error messages, hci, human computer interaction, introduction to programming, novice programmers, programming error messsages, review, runtime errors, survey, syntax errors
AI Read Science
Must-Reading Tree
Example
Generate MRT to find the research sequence of this paper
Chat Paper
Summary is being generated by the instructions you defined