Commit lab assignment 1 - deterministic finite automata.
Reuse most of assignment 1 code for assignment 2 - pushdown automata.
Commit lab assignment 2 - pushdown automata.
Solve lab assignment 3 - turing machine.
Do not allow head to move outside the leftmost written location.