Finite State Machines
FSM.
Limitations:
Considered as an abstract model of computation, the finite state machine is weak; it has less computational power than some other models of computation such as the Turing machine.[1] That is, there are tasks which no FSM can do, but some Turing machine can. This is because the FSM has limited memory. The memory is limited by the number of states. (wikipedia)
The state is the memory.
Turing Machine - https://en.wikipedia.org/wiki/Turing_machine
Turnstile
Morse Machine
(morse code example, from Programming State Machines at mathertel.de)
Sociable Robots
Cynthia Breazel.
Implementations
Arduino FSM Library
QP Framework
QP is a lightweight, open source, state machine framework for microcontrollers such as Arduino. QP enables you to build well-structured and power-efficient event-driven programs as systems of concurrently executing state machines (active objects, a.k.a. actors). (source)