Com Sci 221 --- Programming Languages
Midterm Exam --- Winter 1995
Due Monday, 20 February

Instructor's Comments on the Grading


I allotted 20 points per question, for a total of 100. The scores were 55, 65, 68, 70, 75, 82, 82, 88, 88, 89, 90, 95, 96. These are quite good. If the final exam is similar, this will be a relatively high-scoring class. The 90s and up are all potential As, given some outstanding work on some of the homeworks, and a good final exam. The 75 and up are pretty solid Bs. The 55 is clearly a C performance. Again, all of this is combined with homeworks (at least 40% of the grade) and the final exam. I will ignore a weak midterm when followed by a strong final, but not usually the reverse.

1. Abstract syntx, postfix, stack evaluation

Roughly 4 points each for the individual expressions, and another 4 for the stack height formula. There were very few errors regarding the individual expressions. The main errors in the stack height formula were vagueness, or a calculation over the entire tree, when in fact one dominant path determines the stack height.

2. Type equivalences, representabilities

Roughly 3 1/3 (rounded in the total) for each of a-f. Since equivalence is representability both ways, I gave half credit for each of the representability directions. (c) is somewhat arguable. In the strictest since, the two are incomparable, but in almost all cases you can represent the left-hand type by the right-hand one, so I accepted both answers.

3. Invariant

10 points for the invariant, 5 each for preassertion and postassertion.

4. Abstract syntax and flowchart

5 points each for the abstract syntax tree, the flowchart, the boxing of the flowchart, and the comment about single-entry/single-exit. There were few errors of detail, but a few gross misunderstandings of what the abstract syntax is.

5. Suitability of flowcharts

Roughly 3 1/3 points per bullet. The most common error was proposing a simple flow chart for cobegin-coend that looks like a conditional with no condition. This changes the meaning of the arrows in flowcharts completely, since we normally expect to follow one path in a flowchart, not oodles of them simultaneously.

Comments

Last modified: Wed Feb 22 10:27:18 1995