Laudatur course on Compilers
Exercise, laboratory assignment pages, Spring 2006
Mid-term project
Mid-term project, deadline Wednesday, March 22th 14:00.
The mid-term project consists of individually implemented
scanner and parser. The actual assignment is available
here.
Instructions to the mid-term project will be given at fifth exercise session, being held at Feb 20. Attending to this instruction session will earn you four (4) exercise points.
Returning the work
Generally, the work should be compilable by running 'make'. It is a good idea to have other tasks (packaging, unit tests, etc..) integrated to makefile-driven processes as well, but this is not mandatory.
An example makefile is available here. Some example (not necessarily 100% valid!) Mini-Pascal programs are available here: test.pas and modulo.pas.
The work is returned as a single compressed file (zip or tar.gz) in an e-mail attachment. The package should contain:
- Source code of the work (not autogenerated parts!)
- Makefile to compile the work
- Used test files (Mini-Pascal sources)
- Documentation in PostScript (.ps), Portable Document (.pdf) or ASCII format.
Documentation
Documentation part includes description of the work in a logical and easy-to-follow form. Minimum requirements for the document contains is:
- Explanation of the exercise work
- Description of all source files
- Explanation of compilation process and generated files (use pictures!)
- Explanation of used test files and a log of execution
- Explanation of test output format
- If applicable, shortcomings of the work
If the returned work doesn't fully work and/or has known bugs, it is important to describe those in the documentation.
Additional information
Book: lex & yacc, 2nd edition by John Levine et al. is an excellent additional resource for the work.
Pietu.Pohjalainen@cs.Helsinki.FI