Deriving the store monad in the context of an interpreter.
Another note about the monads.