 |
CMPSCI 630 (691F)
Programming Languages
Spring 2009
|
CMPSCI 630 (691F) Project, Submission Instructions
This handout discusses the final submission for the class project. It
includes how grades will be handled, as well as detailed descriptions
of what should be handed in.
Grades
Recall that both of the project status reports were worth 5% of your
project grade. So the points you earn on the full project will be
scaled so they only account for the remaining 90%.
The official due date of the project is Thursday, May 21, which is the
last day of the exam period. So, you may view the project as a
take-home final exam, if you like. Of course, you can always turn it in
earlier so that it does not interfere with your other responsibilities
during the exam period.
What to hand in
Every project must submit something on paper. All projects should
include:
- A project cover sheet, including your name and the name of the project
and the
names of everyone involved in it.
- An executive summary of the project that is approximately a half
page long.
- A 2 page (or so) overview of the project and the work toward completing
the project. What were the interesting aspects of the project? Was
there anything from class that you feel was better illuminated by the
work on the project? What type of obstacles did you have to overcome
and what did you do to overcome them? If you (or someone else) were
to continue working on this project, what would you tackle next? What
would a "final" version of your project look like if it were
completely finished?
- If you worked in a group,
a brief note about how well the group aspect of the project worked
out. This is a group-wide discussion, mostly so that I can get some
feedback for the future. What did the group like or hate about it?
(Feedback from individuals is also welcome, but you may prefer not to
use this forum.)
The remainder of this handout discusses what should be in the rest of
the project for each of the two types of projects.
Recall that students may choose to make an in-class presentation of their project
in lieu of writing a paper. Such a presentation should be similar in style,
scope and length to one of the regular lectures given by the instructor.
If you choose to make an in-class presentation, submitting a copy of the
lecture slides along with the items enumerated above will substitute for
the paper that would otherwise be required (as described below).
Investigating a programming language
Please hand in a paper presenting your analysis (formal, using
inductive definitions, and possibly also informal)
and your assessment of the language, along with whatever programs
(if any) you
have written. Alternatively, you
can put the programs somewhere on the Web and provide a URL.
However, if you do
that, please be certain that the URL will work for several months
beyond the end of the semester.
The length of your paper should be
about 5-10 pages,
per group member,
not counting the program text.
Your grade will be determined by the quality and
the thoroughness of the analysis (and demonstrated
understanding of that), and the level to which any programs
you've written demonstrate interesting aspects and properties
of the language.
Programming-language related topics
Please hand in a paper reporting on your investigation of
the topic you've chosen (based on a formal, using
inductive definitions, and possibly also informal analysis),
along with whatever programs (if any) you've written.
Alternatively, you
can put the programs somewhere on the Web and provide a URL.
However, if you do
that, please be certain that the URL will work for several months
beyond the end of the semester.
The length of your paper should be
about 5-10 pages,
per group member,
not counting the program text.
Your grade will be determined by the complexity of the topic undertaken,
the quality of the investigation, the demonstrated level of
understanding of the issues that are related to the chosen topic
and how well any programs you wrote probed or illustrated the topic.