Comp210 01.fall exam3 grading key

Preliminary

To save the graders writing the same comment repeatedly, here are some codes:
#5
- Look for close correspondence between the imperative
  version and the assembly version
- make sure they use "mov" rather than "ld" to move things
  between registers.
  (They hadn't used "mov" before this problem; part of
  the point was needing to figure out how to use it,
  from the sheet.)

#3, append!
- they can use the regular ol' "append", if they want:
     (define (append! a b)
          (set-cdr! a (rest (append a b))))
   Note that set-car! of a is *not* needed
   (and should be some points off).

- Their contract should have "cons" instead of "list", for the first arg.
  Also, if their contract includes empty, OR they
  handle the empty list in their code, they should include
  a big warning "does NOT change the first argument if
  empty list provided", or else lose soem points.
  Realizing this limitation is part of understanding the prob.

That's all i can think of, off the top of my head!
--ian

The proofreader marks I use frequently:
margin note Meaning text markup
delete
insert (caret)
insert a space
transpose
align vertically
begin a new paragraph  
close up
let stand
More common proofreader's marks.