Quiz submission record for quiz2-2-2 at Thu Jul 1 10:47:07 2004: Your Answer for Question 1: The technique/convention that reduces register spilling with procedure calls is to provide 4 registers that are used for the arguments ($a0-$a3) and 2 registers that are used for the return value ($v0-$v1). By using these we can minimize the number of registers that need to be saved on the stack. Your Answer for Question 2: A programming language that does not use recursion would not need to allocate frames on the stack. Hence, all the steps having to do with the frame could be elimninated and each procedures frame would be statically allocated at compilation/linking time. Hmm, I took cs61a about 2 years ago so I don't remember the problem with scheme, but I can say that recursion is a tough concept for most programmers (new and experienced) so there can be a lot of hard to find bugs created with it. Your Answer for Question 3: I think that it is a pain to have to keep track of saving and restoring registers, but I guess we have to learn this stuff somehow. I would prefer to stay with C and pointers over this stuff. Your unique submission ID is quiz2-2-2-cs61c-ea-1088704027-840.