Updated the lexer, the compiler, and parser