Course Assignments

Apa

Projects and deadlines

There are two projects, that can be performed in groups of 2 up to 4 people.

The first project deals with Dataflow and Abstract Interpretation. The final deadline for this project has been set to Friday, June 1st 2013, at 13.00. This year there are some additional deadlines: the first is for a one page proposal of what you will be attempting to do in this project: group members, the analysis, the subject language, the software that you will use to support your implementation, remarks on such things as the availability of a parsers of the language under analysis in your programming language of choice. The deadline for submitting this proposal is Thursday May 2nd, 2013, 13.00. During the practice session that follows the lecture on May 2nd, you should demonstrate that you have a working parser for the language that you plan to analyze.

The second project deals with Type and Effect Systems. The final deadline for this project has been set to Friday July 5th, 2013 at 13.00. This year there is an additional deadline for a one page proposal of what you will be attempting to do in this project: the analysis, the subject language, the software that you will use to support your implementation. The deadline for submitting this proposal is Thursday June 6th, 2013 at 13.00. Again, I want you to show me that you have a working infrastructure during the practice session on that same day.

The programming assignments should be in the form of a single zip file including the necessary code and documentation. Every practical assignment should include not only the code, but also a high level description of that code (so that I can quickly learn my way round), a suitable set of example programs (and sometimes example analyses). Try to be thorough in explaining why your solution works and to which extent it does. Be clear about your limitations and your strong points. If you have done anything special that you think qualifies for a bonus, tell me about it explicitly. Also include a description how I may build your software, and which packages I need to get, where they come from and how I should compile them. If you prefer, because you think it may very troublesome to get everything up and running on my MacBook? , you can also choose to demonstrate your implementation on your own machine.

Submission

The deadlines for the various assignments and parts of assignments to be submitted are listed above. Try to be on time; this greatly simplifies the administration task. People who submit too late, should take into account that they will get at least a one point penalty for the overhead (out of ten), depending on how much too late the submission is.

The proposals and later the complete zip files should be e-mailed directly to me.

If you have handwritten parts, then I prefer to get a version of that document at a lecture before the deadline. Otherwise put it in my BBL post box (fifth floor, coffee room).

Make sure your names and student numbers are at the top of each hand-in, and in the case of software being handed in, in your documentation file and in the main source file.