A self project of compiler, with modules of lexical analysis, parsing, semantic analysis, code generation as well as error detection. A virtual machine to run generated code. Implemented in C++