An interpreter, and imperative programming