I wrote an end-to-end compiler that compiles a Javascript-like scripting language into MIPS Assembly. I implemented preprocessing (including incorporating macros such as #include and #define), lexical analysis, parsing, and semantic analysis. I also added functionality for calling nested functions, maintaining local and global variables separately, and fetching script files from the internet.
Technologies: Java, Compiler Theory
Date: June 2022
Github Repository: https://github.com/g10ria/Generic