This page is dedicated towards keeping track of my progress for my Turing Machine (TM) project, mostly through blog posts about my design decisions.
Here is the Github repository.
I thought of the idea after my computing theory course. I could solve TM language graphs and give its formal definiton, but I had to visualize its operations in my head. It also presented an interesting challenge: to program a universal TM.
This is the first project where I attempt test-driven development. I am using Catch2 to make suites of unit tests for my components before I begin detailed implementation. So far, it has worked much better than print statements for debugging, and I am much more aware of my design decisions.