milestone: type checking
At this point in time you should:
- have defined the types relevant for WIG programs;
- have specified a set of type rules for WIG programs (in prose, if you
- have implemented the corresponding check for static type correctness;
- have tested your implementation, by:
- extending the pretty printer to print the type of every expression;
- writing test programs that provoke every error message; and
- making sure your compiler handles the 2009 class benchmarks or prints an error
message if not;
- have added a command-line switch that enables (or disables) the type checking phase;
- have added a command-line switch that enables (or
disables) the printing of expression types in the pretty printer;
- have added a
type target to your
testing the type checker.
You should check in your source code to
You should also detail your progress for each of the steps above in
group-X/reports/typecheck.txt. Remember that if you
write your milestone report well enough then you can likely reuse
portions of it in your final project report.
This milestone is due on the Friday of Week 9. It will count for 5%
of your grade. It will not be considered complete until you have
completed all of these tasks. This is a fairly considerable milestone
and you will not be able to finish it in one day. Remember that
successfully completing the milestones is a key factor in completing
the WIG project, and that timely completion of milestones is part of
the grade for the course. Also remember that we expect to see all
group members committing changes to the Subversion repository.
Maintained by Chris Pickett.