[Functional Programming] Define Discrete State Transitions using the State ADT

NoSuchKey