HW4 grading guide. Ex.2.11: this allows mutual recursion (see p. 64 of text). It also allows use of a function that is defined elsewhere (e.g., in a different file), by giving an extern directive. 5 points. -1 if extern is not mentioned, -3 points if mutual recursion is not mentioned. Ex 2.13: macro processing binds identifiers before compile time (p.49); routine parameters are bound at run time. 5 points. Ex 2.15: see p.66. Also, note that this allows binding of an arbitrary subset of parameters; in C, only a beginning subset of parameters may be bound. 5 points. If students do not discuss the advantage w.r.t. C or C++ or Java, -1. Ex. 2.16: If A is a real and I is an integer, EQUIVALENCE (A,I) allows the same memory location to be addressed as both a real and an integer. Since usually reals and integers are represented differenty, the memory value in A (or I) after A = A + 1 I = I + 1 is not well defined. (Example from Pratt.) 5 points.

HW5 (PR1) 15 points. 10 for documenting that the student used simusem; 5 for the proof of correctness.

PR2 grading guide. 10 points in total. 5 points per exercise.

HW6 grading guide. 18.5 points in total. 2.1.2 4.5 points in total, 0.5 point per exercise. 2.2.2 4 points in total, 0.5 points per exercise. 2.4.1 4 points in total, 0.5 points per exercise. 2.4.3 2 points in total, 0.5 points per exercise. 2.4.4 1 point: 0.5 points per part. 2.4.5 3 points in total, 0.5 points per part.

PR3 grading guide. 24 points in total. 2.1.1 4 points in total, 0.5 points per exercise. 3.1.1 7 points in total, 1 point per exercise, except 2 points for (f). 3.1.2 8 points in total, 2 points per exercise. 3.2.1 5 points in total (a) 2 points, (d) 4 points.

PR4 grading guide. 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 6 points, 2 points per paer.

PR5 grading guide. 4 points in total. 2 points off if the solution is not logarithmic in the exponent.

PR6 grading guide. 20 points in total. 4 points for the relations given by extension. 2 point for each of the 8 relations given intensionally (i.e., by rule).