CS 345: Programming Languages
Hamilton Richards ---Spring 2005--- University of Texas at Austin

Contents

Home Page

Announcements

Syllabus (pdf)

Administrative matters

times and places:
  
office hours
  lectures
  exams

exam ground rules

grade calculations

important dates

adding CS classes

Lecture Notes

Homework

ground rules
cover sheet
format
collaboration
assignments

Old exams

Grades Q & A

CS Ground Rules

Recommendation Letters

Other links

Homework

Ground rules

A set of exercises is assigned each Monday (except the week before each midterm test), and is due on Tuesday of the following week. It's OK for you to work on the homework exercises with other students, and a team of up to four students may hand in a joint paper.

Homework papers are to be left in the Taylor Hall homework box (in the breezeway, between 2.132 and 2.136) by 4:00pm on the day they are due. Late homework will not be accepted. Problems such as printer failures and late buses are routine occurrences, and are not grounds for extending homework deadlines. To avoid problems, get an early start on your homework and allow for Murphy's Law.

Suggested solutions for each set are handed out at the class meeting following the day it is due. Graded homework papers are returned in class. The grades on each set of papers are considered final one week after the set has been handed back, so you should bring any questions to the grader's attention promptly. If you are unable to reach an agreement with the grader on a grading question, then you are welcome to bring the disagreement to me.

Although homework assignments' point totals may vary somewhat for grading convenience, all count equally --except the lowest one, which will be dropped-- towards the course grade. The average of your homework exercises' percentages counts as 10% of your course grade.

The graders have been instructed that in grading homework papers and test answers, the burden of proof is on the student. That is, it's not the grader's job to prove an answer wrong, but the student's job to convince the grader that it's correct. In some exercises, you will be asked to provide formal proofs; in all others, a solution's grade will be influenced strongly by its simplicity and clarity.

Cover sheet

Homework papers are to be handed in with a preprinted cover sheet which will be provided with the assignment. This cover sheet will show

  • instructor's name (Richards)
  • course number (CS345)
  • assignment number

and will have blanks for the names of all students contributing to it (at most 4).

Format

Your homework paper's pages should be stapled and not folded.

You should make the graders' job as easy as possible, so that they can spend their time evaluating your work rather than hunting for it. Solutions should appear in your paper in the same order as the exercises are given in the assignment. If a solution includes a program, any input and output associated with that program should be included as part of that solution.

Collaboration

In this course students are explicitly permitted (even encouraged!) to work together on homework assignments, but not on tests. Note that this policy is an exception to the default policies of both the Computer Sciences Department and the University, which prohibit collaboration unless it is expressly authorized on a course-by-course basis.

It's OK for groups of up to four students to hand in a single paper. Rather than split up an assignment among group members, each group should work together on all exercises, to ensure that all members learn what the exercises have to teach.

Assignments

Weekly exercise sets will be posted here as PDF documents. Free Acrobat readers and browser plug-ins for most common platforms are available here.

 
 Assignment 3
 Assignment 4
 Assignment 5
 Assignment 6
 Assignment 7
 Assignment 8
 Assignment 9
 Assignment 10

Haskell code

Expression Evaluator code

Understanding Hugs error messages

C++ code

charSet.cp

IntArray.cp

Sample input (worth reading for its own sake)

Elites.text


This page was last revised on Mon, Apr 25, 2005.

Send questions, suggestions, or comments to