Implementation of the COOL programming language compiler, based on the CS143 course
COOL is a simple object-oriented programming language, created with the intend of writing compilers for it. This repository contains my implementation of one such compiler for the MIPS architecture, that I have written for my Intro to Compilers course in Sofia University. This course is almost entirely based on the Standford course CS143. The source code only contains the files that I have personally written - the flex lexical analyzator, the bison parser, the AST traversal for the semantic analizator and the assembly code generator. Rest of the code is part of the core skeleton provided in CS143 - you can find multiple repositories on GitHub that contain this skeleton and since it contains an excesive amount of symlinks, it is intentionally not included.