Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bartekpacia/feup-comp
Code for the Compilers course at Faculty of Engineering of the University of Porto
https://github.com/bartekpacia/feup-comp
Last synced: 22 days ago
JSON representation
Code for the Compilers course at Faculty of Engineering of the University of Porto
- Host: GitHub
- URL: https://github.com/bartekpacia/feup-comp
- Owner: bartekpacia
- Created: 2024-07-13T02:41:07.000Z (6 months ago)
- Default Branch: master
- Last Pushed: 2024-12-03T18:06:32.000Z (about 1 month ago)
- Last Synced: 2024-12-04T12:36:10.361Z (30 days ago)
- Language: Java
- Homepage:
- Size: 2.2 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Comp2024 Project
Contains a reference implementation for an initial version of the project that supports a small portion of Java--.
## Checklist
### 3.1 - The JAVA-- Language
- [ ] Complete the JAVA-- grammar in ANTLR format
- [X] Import declarations;
- [ ] Class declaration (structure, fields and methods);
- [ ] Statements (assignments, if-else, while, etc);
- [ ] Expressions (binary expressions, literals, method calls, etc);
- [ ] Setup node names for the AST (e.g. "binaryOp" instead of "expr" for binary expressions);
- [ ] Annotate Nodes in the AST with relevant information (e.g. id, values, etc.);
- [ ] Used interfaces: JmmParser, JmmNode and JmmParserResult;### 3.2 - Symbol Table
- [ ] Imported classes;
- [ ] Declared class;
- [ ] Fields inside the declared class;
- [ ] Methods inside the declared class;
- [ ] Parameters and return type for each method;
- [ ] Local variables for each method;
- [ ] Include type in each symbol (e.g. a local variable "a" is of type X. Also, is "a" array?);
- [ ] Used interfaces: SymbolTable, AJmmVisitor (the latter is optional);