• HW1 20 points total; Part 1: 14 points (1 per question) Part 2: 6 points (3 per question)
  • HW2 22 points total Part 1: 16 points (2 per question) Part 2: 6 points (1 per question)
  • HW3 20 points total 7 points for 1.9.3: 3 for a program that is correct or almost correct when considered to be C or Java or Pascal like pseudocode; 4 for a program that shows why the two statements may give different results. 9 points for 2.9.1 (1.5 per diagram: there are six diagrams). 4 points for 2.9.2: students should not use rules with an empty right-hand side, but not points will be taken off for that.
  • HW4 10 points total
  • PR1 10 points total 5 points for students using a stack-based implementation 9 or 10 points if return value is allocated space in the activation record of the callee or of the caller
  • HW5. 22 points in total. 2.1.2 0.5 points each to 4 points. 2.2.2 0.5 points each to 4 points. 2.4.1 0.5 points each to 4 points. 2.4.3 1 point each to 4 points. 2.4.4 1 point each to 2 points. 2.4.5 0.5 points each, with a maximum of 2 points. 2.4.6 2 points
  • PR2. 30 points in total. 2.1.1 4 point, 1/2 point per part, full credit for (g) with either a report of error or a report of what appears when entering the expression 0xAB+123. 3.1.1 6 points in total, 1 point per exercise. 3.1.2 8 points in total, 2 points per exercise. 3.2.1 12 points (2 per part).
  • PR3 20 points in total. 3.3.1 6 points in total, 1 point each. 3.3.2 2 points. 3.3.3 3 points. 3.3.8 3 points. 3.3.11 9 points, 3 points per part.
  • PR4 25 points. One for each of the five relations defined extensionally, 2 points for each of the eight rules to be written, except 4 points for sibling, 3 points for sister_of and grandma_of.
  • PR5 15 points in total. 5 points per part. Partial credit for short programs that run. Small partial credit for use of &, !, @, trans, id, 1, %0.