Separating parsing from the translation to machine code