Output list
Conference proceeding
A Parsing Technique for Enhancing Compiler Syntax Error Messages for Student Programmers
Published 10/13/2024
Proceedings - Frontiers in Education Conference, 1 - 7
2024 IEEE Frontiers in Education Conference, 10/13/2024–10/16/2024, Washington, DC
Contribution: This full research paper presents an innovative parsing technique that aims to improve syntax error messages for undergraduate students. The quality of syntax error messages generated by the new parsing technique was evaluated and compared with the messages produced by mainstream compilers. Background: Unfortunately, compiler error messages are often unhelpful. The study explains some intrinsic challenges faced in generating good syntax error messages and presents a global, local, and expression-level (GLE) parsing technique to overcome some of these challenges. GLE is a 3-phase parsing that prioritizes the parsing of the large code components over diving into all the details. The first phase parses the functional structures and ignores errors in the syntax of the smaller constructions. The second phase parses the control structures and ignores errors in the expressions and other statements. The third phase parses the expressions and statements excluded from phase two. Research Question: Can GLE parsing techniques help generate better syntax error messages? Methodology: The study evaluated the quality of syntax error messages generated by the proposed GLE parsing technique. The evaluation was done in a controlled experiment and within-group design where participants found and fixed errors in erroneous programs using accompanying error messages from different compilers. The independent variable is the compiler type. The dependent variable is the quality of syntax error messages. The quality of syntax error messages is measured by three factors: the success rate of finding errors in erroneous programs, the success rate of fixing syntax errors in erroneous programs, and mean-time-to-find and -fix erroneous programs. Three questions were used to evaluate the "helping in finding errors" quality of the error message: 1) what is the error in the program? 2) in which line is the error? 3) what is the cause of the error? One question was used to evaluate the quality of "helping in fixing errors": "how to fix the error?" The time that participants used to find and fix a program was calculated. The participants were 51 undergraduate students in the Computer Science and Engineering department at the New Mexico Institute of Mining and Technology. Findings: The results show there is a significant statistical difference in finding errors and fixing erroneous programs using messages generated by the proposed GLE parsing technique and two mainstream compilers: GNU GCC and Microsoft Visual C++. No significant difference exists in the time-to-find and -fix. The result indicates that the proposed GLE parsing technique can help generate better error messages for undergraduate students.
Conference proceeding
Darwin's Demons: Does Evolution Improve the Game?
Published 01/01/2017
APPLICATIONS OF EVOLUTIONARY COMPUTATION, EVOAPPLICATIONS 2017, PT I, 10199, 435 - 451
It is widely assumed that evolution has the potential to make better video games. However, relatively few commercial games have been released that use evolution as a core game mechanic, and of these games only a very small sub-set have shown that evolution occurs as expected and improves game play as intended. Thus, there remains a critical gap between studies showing the clear potential of evolution to improve video games and studies showing that evolution did improve game play in a commercially released game. We have developed Darwin's Demons, a space shooter inspired by old style arcade games, with the added feature of evolving enemies. In August, 2016 Darwin's Demons was Green-lit for sale on Steam, a standard benchmark for commercialization of games. In this paper we present and test four hypotheses that form the basis for the claim that evolution occurs and improves game play in Darwin's Demons. More generally, these hypotheses can be used to confirm that evolution meets the intended design goals for other evolutionary games. Our results support the hypotheses that evolution makes Darwin's Demons get progressively more difficult over the course of a game, and that the fitness function, player choices, and player strategy all affect the evolutionary trajectory during a single game. This suggests that in Darwin's Demons, the enemies adapt to the player's decisions and strategy, making the game interesting and increasing its replayability.
Conference proceeding
Co-evolution of Sensor Morphology and Behavior
Published 07/20/2016
Proceedings of the 2016 on Genetic and Evolutionary Computation Conference Companion, 135 - 136
GECCO '16: Genetic and Evolutionary Computation Conference
This research tests the co-evolvability of sensor morphology and behavior as a function of the sensing modality (scent versus touch). The results show that the evolved sensor morphology and behavior are tightly coupled and influenced by sensor type and environment. Implying that co-evolution of physical morphology, behavior, and sensor morphology can generate better performance than using fixed sensor morphologies, but that this is often a more difficult task than evolving physical morphology for a fixed behavior or vice versa.
Conference proceeding
(GECCO) 2012 Annual Conference on Genetic and Evolutionary Computation
Published 2012
Genetic and Evolutionary Computation: 14th International Conference (GECCO), 2012, 07/07/2012–07/11/2012, Philadelphia, Pennsylvania
Conference proceeding
Genetic Programming (EuroGP) 2004. Proceedings
Published 2004