5 semester System Programming 2 CourseWork - Simple Rust compiler
Subset of a Rust programming language syntax, including arithmetic and logic operations, control constructions and loops, is compiled via next stages:
- Lexer, implemented as a seperate module.
- Parser, implemented as a recursive descent parser in a seperate module.
- Semantic analysis, which is performed in a parsing module during AST building.
- Code generator, which does its work in a Main class, during AST traverse.
Input and output file names are passed as command-line arguments to the program.