CSc 453: Fall 2007: Programming Assignments

The Start dates given here refer to the latest date by which the specification for an assignment will be made available. I will try to make the specifications available earlier than this, both to give people more flexibility in budgeting their time, and to allow them to anticipate future needs while designing their programs.
0. Assignment 0 Function: set up
1. html2txt Function: Convert a HTML file to a txt file (Goal: learning to use lex and yacc).
Input: HTML file;
Output: txt file.
Part 1: Start: Fri Aug 24 2007; Due: Fri Aug 31 2007; Specification
Part 2: Start: Fri Aug 31 2007; Due: Fri Sept 7 2007; Specification
Weight in final grade: 4%
2. Scanner + Parser Function: Read in a program according to the lexical conventions of the language; check syntax rules and report lexical/syntax errors; syntactic error recovery.
Input: source program character sequence;
Output: syntax error messages (if any).
Specification
Start date: Fri Sept 14 2007
Due date: Fri Sept 28 2007
Weight in final grade: 12%
3. Type Checking Function: Check type restrictions and report semantic errors; semantic error recovery.
Input: source program character sequence;
Output: syntax/semantic error messages (if any).
Specification
Start date: Fri Oct 5 2007
Due date: Fri Oct 19 2007
Weight in final grade: 17%
4. Code Generation Function: Generate assembly code.
Input: source program character sequence;
Output: assembly code instruction sequence.
Specification
Start date: Fri Oct 26 2007
Due date: Mon Nov 19 2007
Weight in final grade: 17%

4(a). Milestone 1: Code generation for a subset of C--:

Specification
Start date: Fri Oct 26 2007
Due date: Sun Nov 11, 2007
Weight in final grade: 7%