Computer Science 5641
Compiler Design
Project Part 3 (50 points)
Due November 17, 2009

Now that you have implemented your scanners we need to continue by implementing two parsers, one in C/C++ and one in Java. You will continue to work on our simple math language is described here, but note there are a couple of changes to make the language easier to work with (the changes marked with strikethroughs) math_language.html. One scanner should be implemented in C/C++ using flex and bison. The other parser should be implemented in Java using JavaCC. You may use your transducer from part 2 of the project as part of this parser if you like.

Implementation Details


Test your code on a set of files containing sequences of tokens. Try to exercise every possible statement and composition of expressions. Make sure to show all of your error testing.


Document your code and your testing. You should writeup a summary of the system. In addition, each student should write up an assessment of their teammates performance.