yewness said almost 7 years ago on State Machines :

Can consider covering stateful_enum for state machine because it's quite easy to implementation and the code is very clean using enumerables.