A new compiler for Classroom Object Oriented Language (COOL) written as an LLVM frontend using ANTLR