Composing Turing Machines in FSM
summary
A domain-specific language called FSM DSL lets students define Turing machines, run unit tests, and compose machines with a small embedded language of sequencing, labels, conditional jumps and variable-binding. The demo builds primitives (move right, write/erase), composes R twice, implements head-scanning loops and a full adder for unary naturals, and executes examples live. Correctness is argued with Hoare-style triples and the implementation and examples are available on GitHub.
AI-written summary · about
