To run this project, run the following commands:
npm install
The following command will run the file that is located in inputs, named normal.txt
npm run start
For the first checkpoint:
- We created a Lexer that identifies all of the specified tokens
- We created the parser that check the order of the specified tokens to verify the correct syntax
For this second checkpoint:
- We defined and implemented our semantic cube with all rules on operators and types.
- We defined and created our function tables and the variable tables implemented in TS.
For this third checkpoint:
- We added embedded semantic actions on our parser that allow us to extract and manipulate context such as variables and functions.
- We defined our virtual memory scheme and structure for the stacks needed for expressions.
For this fourth checkpoint:
- Expressions and assignments are working correctly.
- Conditionals and loops generate correctly quadruples and writes to the virtual memory.