2012-02-05

Moving on to Google, finding a few old code gems from high-school

I posted on Google+ a short while back that I am going to work for Google as an SRE. As a result, I have been digging through and cleaning out some of my old computers and trying to generally get my digital life a bit more in order.

One of the entertaining things I found was a bit of code I wrote back in high-school (at TJHSST) as a project for my "Computer Architecture" programming class.  We were using the Structured Computer Organization textbook (although I don't remember what edition), which described a MIC-1 microarchitecture and used it to implement a MAC-1 virtual machine.  My project was about 1000 lines of Perl which implemented an assembler and interpreter for the microarchitecture code as well as a MAC-1 wrapper program with the microcode for that virtual machine.

Looking back at the code today, I'm actually kind of impressed with how well I managed to comment it at the time, and it's possible I have actually gone downhill a bit with some of my more recent Perl scripts.  The error handling and the high-level design is missing, but the basic functionality is sound and properly done.

Aside from code comments, the documentation is basically missing, in large part because I lost the project specification it was implementing somewhere during the last 8 years.

Since it's one of my better examples of code from my younger days, I've decided to publish the code on GitHub under kmoffett/perl-mic1, feel free to check it out and let me know what you think!

Cheers,
Kyle Moffett