| How to | get started | turn in each phase | test each phase |
| gpl | programming manual | grammar | executables | vim syntax highlighting |
|
Due Date |
Project Title |
Description |
|||
|
P1 |
9am Feb 2 |
src | tests |
Warm up exercise to learn flex/bison (GNU versions of lex/yacc) |
|
|
P2 |
9am Feb 9 |
|
Warm up exercise to introduce the language |
||
|
P3 |
Midnight Feb 15 |
src | tests |
Build the scanner using flex and a skeleton of the parser using bison |
|
|
P4 |
Midnight Feb 24 |
src | tests |
Implement a symbol table for the parser from phase 3 |
|
|
P5 |
Midnight March 31 |
src | tests |
Implement a C++ tree structure to hold expressions and add actions to parser to parse expressions |
|
|
P6 |
Midnight Apr 19 |
src | tests |
Implement a C++ object to hold games objects (triangle, rectangle, etc) and add actions to parser to parse game objects |
|
|
P7 |
Midnight May 5 |
Statements and Event Handlers | |
tests |
Implement C++ objects to represent GPL statement, and the event handler class. Add actions to the parser to handle both. |
|
P8 |
Midnight May 15 |
|
tests |
Implement the animation code blocks |
Note: Midnight February 15 is the midnight between February 15 and February 16.