ABSTRACT
Existing assembly programming simulator tools used for educational instruction are stand-alone programs with aged user-interfaces. These tools are antiquated for modern programmers who are accustomed to powerful IDE environments. VSCode has emerged as the go-to in an academic and industry setting. Dashmips is a MIPS Interpreter and Debugger which adds MIPS assembly programming support to VSCode. The interpreter, developed in Python, has a functional design that is easily customizable and extensible for academic instruction specific to a course. Inline Python documentation automatically generates program usage and help documentation for student support. Additionally, the MIPS interpreter is stand-alone from the debugger and can be utilized on the command-line and programmatically via scripting or a Python program allowing integration into auto-grading frameworks. This demo will provide a brief introduction to the features of Dashmips as an educational tool, including simple setup, one-click debugging, clear visualization of register and memory data, and framework for instructor customizations. A step-by-step tutorial for creating a new program and interacting with the debugging environment will illustrate the accessibility of the environment for modern programmers. Information about Dashmips and the Dashmips Debugger can be found at https://github.com/nbbeeken/dashmips and https://github.com/nbbeeken/dashmips-debugger, respectively.
Index Terms
- Dashmips: MIPS Interpreter and VSCode Debugger
Recommendations
Multi-level debugging for interpreter developers
MODULARITY Companion 2016: Companion Proceedings of the 15th International Conference on ModularityConventional debuggers require programmers to work on multiple levels of abstraction at once when inspecting call stacks or data. This demands considerable cognitive overhead and deep system knowledge of all implementation technologies involved. When ...
Language extension and composition with language workbenches
OOPSLA '10: Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companionDomain-specific languages (DSLs) provide high expressive power focused on a particular problem domain. They provide linguistic abstractions and specialized syntax specifically designed for a domain, allowing developers to avoid boilerplate code and low-...
Studying developer build issues and debugger usage via timeline analysis in visual studio IDE
MSR '18: Proceedings of the 15th International Conference on Mining Software RepositoriesEvery day, most software developers use development tools to write, build, and maintain their code. The most crucial of such tools is the integrated development environment (IDE), in which developers create and build code. Therefore, it is important to ...
Comments