This paper describes a project which goal is to analyze and model a complete Virtual stack Machine (VM) environment and build a Web application with a graphical interface to deploy an environment to compile and execute VM programs. The new tool offers two main features: assembles and reports errors in programs written in the assembly language of the Virtual Machine; and animates the execution of the compiled code, displaying the internal state of the VM and providing an interface to control the execution step-by-step. In the paper, after discussing related concepts and works, a proposal to build such a tool, so far called EWVM, will be presented along the architecture drawn. A prototype will be shown, and its impact as an educational tool is argued.
@InProceedings{teixeira_et_al:OASIcs.SLATE.2022.7, author = {Teixeira, Sofia and Ramalho, Jos\'{e} Carlos and Henriques, Pedro Rangel}, title = {{EWVM, a Web Virtual Machine to Support Code Generation in Compiler Courses}}, booktitle = {11th Symposium on Languages, Applications and Technologies (SLATE 2022)}, pages = {7:1--7:9}, series = {Open Access Series in Informatics (OASIcs)}, ISBN = {978-3-95977-245-7}, ISSN = {2190-6807}, year = {2022}, volume = {104}, editor = {Cordeiro, Jo\~{a}o and Pereira, Maria Jo\~{a}o and Rodrigues, Nuno F. and Pais, Sebasti\~{a}o}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.SLATE.2022.7}, URN = {urn:nbn:de:0030-drops-167535}, doi = {10.4230/OASIcs.SLATE.2022.7}, annote = {Keywords: Virtual Machine, Stack Machine, Assembler, Debugger, Compiler, Code Generation} }
Feedback for Dagstuhl Publishing