A compiler for the toy language Oreo, written from the ground up in Python
Process and features:
- I transformed the context free grammar (CFG) to be LL(1) and added some additional language features, such as functions
- Lexing
- Syntax analysis
- Semantic analysis
- Typechecking
- Intermediate code generation (using Three Address Code)
- Machine code generation (using High Level Assembly)
Written for my Programming Language Implementation module.