perused solutions
Section 5.3.1 - why didn't they just introduce (vector) constructor??
list-set!
Exercise 5.20 - quick monkey-see-monkey-do on Figure 5.14
Exercise 5.21 - count-leaves by register machine; in other words, this is how painful Chapter 2 would have been, were we coding in assembly...
and part b - a more iterative version with an explicit counter
Optimized part a using the same tricks as for the Fibonacci machine (Exercises 5.6, 5.11a, and a bit of common sense); optimized part b by getting rid of the unnecessary register retval - although now you have to keep track of n a lot more closely