A bytecode interpreter, plus a compiler for a C-like language to that bytecode.