Several ways to implement state machines
Explicit tests of states in the code => eg, a big case statement Manually written state tables Code generation
Manually written state tables
Code generation