Further work on rewriting the compiler.