Inspiration

I guess the Java Virtual Machine. More broadly, my compilers class and love of systems.

What it does

MagnumVM loads a Magnum binary executable file and runs. The GitHub README gives more info, so just read that.

How we built it

In Rust. Didn't use anything outside of the standard library.

Challenges we ran into

I spent half the hackathon debugging one particular bug... I forgot that argv[0] is not the first argument which screwed everything. Also I had to stop to take a CS midterm and sleep.

Accomplishments that we're proud of

Well, it works. It's not powerful but it is complicated, maybe my most complicated hackathon project.

What we learned

Creating VMs, reading binary files in Rust, designing a binary executable file.

What's next for MagnumVM

It needs a lot of cleanup, and some more testing. More powerful instructions. And then an Assembler targeting it, and then a compiler... A heap with garbage collection would be nice too.

Built With

Share this project:

Updates