finished (?) Interpreter API