CMPS203, Winter 2014, Section 01: Project


The project is a more in-depth exploration of a topic of your own interest. The subject can be related to anything that is covered in class, or anything related to programming languages theory, design, and implementation.


There are a few different types of projects.

  • Programming project, implementation (code up something interesting)
  • Survey of published research (summarize 4-5 papers, include examples)
  • Original work (investigate an idea, talk about your progress)


You are allowed to work in groups of 1-3 people; doing the project alone is recommended to limit coordination problems. If more than one person is in the group then all members of the group must be actively working on all aspects of the project together; every member of the group must be able to explain every aspect of the project.

Time Expectation

Each person in your group is expected to spend 20-40 hours on the project over the course of the quarter. Some of this time will be investigating different possible topics, some time will be finding papers and understanding them, some time might be programming, some time will be creating presentations and writing the final report.


Your group is required to present your work in a lightning talk with 5 slides (5 minutes). This should be a taste of the work you did for the project, not an exhaustive description of your work. Your presentation will be entirely peer-graded. Students will rate your presentation on criteria such as whether they could understand what you did, whether it seemed interesting, your communication skills, and whether your project demonstrated concepts of programming languages.


Your group is required to submit a written project report. This report should be 2-5 pages long written in a style that is reasonably close to preprint conference submission quality. You should clearly express an idea, put it in the context of the field, and provide citations. Survey papers will include more citations, but all types of projects are required to at least motivate the idea and provide some context for why the work is interesting and what it builds on. Groups larger than 1 person may submit one report.