A compiler for the COOL programming language