I need one compilator done in JavaCC(it is a practical assigment in my studies) Step 1 Building the Syntax Tree Step 2 Symbol Table and Type Checking Step 3 Byte Code Generation and Interpretation I HAVE one done by others partners, so you can use it and change it for the teacher don´t know that are the same code. ----------------------------------------- STEP 1 Constructing the Syntax Tree In the first step we will take care of the lexical analysis, and the syntax analysis. We do not bother with storing information in symbol tables or semantical analysis. These issues will be dealt with in the next step. Our goal is to construct a parser that builds up a syntax tree, and verifies that the program at hand is lexically, and syntactically correct. We will not implement the parser from scratch. Instead we will use a parser generating tool named JavaCC. (The Java Compiler Compiler.) A parser generator is a tool that reads a grammar specification and converts it to a Java program that can recognize matches to the grammar. JavaCC is a LL(k) parser generator that can handle grammars with productions like: void Expression() : {} { (BooleanExp() (BoolOp() BooleanExp())*) #Expression(>1) {} } which corresponds to the following BNF grammar production: Expression ::= BoolExp (BoolOp BoolExp)* --------------------- STEP2 Symbol Table Construction What follows is a list of comments that serves as guidelines for how to incorporate the symbol table. It defines at the same time what we expect you to do in this phase of the assignment. ----------------------- STEP 3 The next phase (in our case) is the code generation and the interpretation. We will use a subset of the Java Byte Code (slightly modified) as our intermediate representation and a simple stack machine (like the Java Virtual Machine) to run the programs. Hence, we mimic the way real Java programs are used.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows? (depending on the nature? of the deliverables):
a)? For web sites or? other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software? installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
Eclipse