Improving Students' Performance with Visualization of Error Recovery Strategies in Syntax Analysis

Journal of Research and Practice in Information Technology, Vol. 45, No. 3/4, August 2013 Copyright© 2013, Australian Computer Society Inc. General permission to republish, but not for profi t, all or part of this material is granted, provided that the JRPIT copyright notice is given and that reference is made to the publication, to its date of issue, and to the fact that reprinting privileges were granted by permission of the Australian Computer Society Inc. Visualization technologies can be used to enhance teaching materials. This work is focused on a complex aspect of syntax analysis, syntax error recovery strategies. Compiler visualization is not a new research fi eld, but the authors have not found any visualization tool dealing with this topic. We have enhanced a parser visualization tool called VAST to produce educational visualizations regarding syntax error recovery strategies. We have evaluated the enhanced version of VAST and its visualizations about syntax error recovery strategies. We have detected that students who used the enhanced tool improved their performance developing syntax specifi cations with error recovery. Consequently, these students signifi cantly improved their learning outcomes regarding error recovery exercises. ACM Classifi cations: D.3.4 (Processors): Compilers; K.3.1 (Computer Uses in Education): Computerassisted instruction (CAI); K.3.2 (Computer and Information Science Education): Computer science education Improving Students’ Performance with Visualization of Error Recovery Strategies in Syntax Analysis

[1]  R. Daniel Resler,et al.  VCOCO: a visualisation tool for teaching compilers , 1998, ITiCSE '98.

[2]  Jaime Urquiza-Fuentes,et al.  Visualization of Syntax Trees for Language Processing Courses , 2009, J. Univers. Comput. Sci..

[3]  Jose Jesus Castro-Schez,et al.  Designing and developing software for educative virtual laboratories with language processing techniques: Lessons learned in practical experiments , 2012 .

[4]  Jaime Urquiza-Fuentes,et al.  A Survey of Successful Evaluations of Program Visualization and Algorithm Animation Systems , 2009, TOCE.

[5]  Andrew W. Appel,et al.  Modern Compiler Implementation in Java , 1997 .

[6]  Lauri Malmi,et al.  Evaluating the educational impact of visualization , 2003, ITiCSE-WGR '03.

[7]  Alan Kaplan,et al.  CUPV—a visualization tool for generated parsers , 2000, SIGCSE '00.

[8]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[9]  Jaime Urquiza-Fuentes,et al.  Syntax Trees Visualization in Language Processing Courses , 2009, 2009 Ninth IEEE International Conference on Advanced Learning Technologies.

[10]  José Luis Sierra,et al.  An environment for supporting active learning in courses on language processing , 2008, ITiCSE.

[11]  Sami Khuri,et al.  Animating parsing algorithms , 1998, SIGCSE '98.

[12]  Pedro Pablo Gómez-Martín,et al.  Dynamic Binding Is the Name of the Game , 2006, ICEC.

[13]  Mona E. Lovato,et al.  Parser visualizations for developing grammars with yacc , 1995, SIGCSE '95.

[14]  Susan H. Rodger Learning automata and formal languages interactively with JFLAP , 2006, ITICSE '06.

[15]  R. Daniel Resler,et al.  VisiCLANG—a visible compiler for CLANG , 1990, SIGP.

[16]  Steven R. Vegdahl,et al.  Using visualization tools to teach compiler design , 2000 .

[17]  Viljem Zumer,et al.  An educational tool for teaching compiler construction , 2003, IEEE Trans. Educ..

[18]  Kristy Andrews,et al.  Design and implementation of the UW Illustrated compiler , 1988, PLDI '88.

[19]  Jaime Urquiza-Fuentes,et al.  Educational visualizations of syntax error recovery , 2010, IEEE EDUCON 2010 Conference.