SimpleASM
A simple assembly language (and interpreter), designed to help teach basic programming skills.
It's not at all perfect, and needs testers, so if you encounter any issues, please submit them here
Run it here
Posted on May 20, 2020
SimpleASM was created at the end of my first year at Lancaster University. We'd created applications using MIPS assembly, and as a fan of seeing what can be done in browser, I wrote my own "assembly" language that could be interpreted in client-side JavaScript.
I used the GitHub Pro to keep things private at first, and I was using WebStorm, one of the JetBrains IDEs that comes in the Student Developer Pack.
You can see the running website here
The stack involved was just client-side JavaScript, initially served from an NGINX test server, but then moved over to a GitHub pages site (it was static, after all). The big issue I encountered was debugging the code when loops were introduced. Obviously, poor interpretation of a loop could result in the browser freezing, and as I wasn't looking to solve the halting problem, this resulted in a lot of restarted browser sessions!
It's been great to revisit this project for the git remote graduation this year. I have a lot of fond memories made when I created it, and even though its not my best work, and I could add greatly to it, including a refactor and much better text processing (this was the first time I'd written any sort of interpreter), I'm pleased with what I came up with.
Posted on May 20, 2020
Sign up to receive the latest update from our blog.
May 24, 2020
May 24, 2020