Quiz 4
This quiz is due WEDNESDAY, September 19, at 10:00AM Eastern Time.  NOTE:  This deadline has been *extended*; this quiz used to be due Monday, but the quiz schedule for the course has been pushed back by one lecture.
Sign in to Google to save your progress. Learn more
Enter your course PIN: *
When we went from fdC to lamC, we dropped the function's name.  Why? (Choose ALL that apply) *
Required
The interpreter with lamC checks for numeric arguments to plus and mult, but the previous ones didn't.  Why? *
Which of the following is a valid desugaring for (let ([x e1]) e2) using lambda? *
Imagine we used substitution rather than environments in the lamC language.  Then, substituting a value into an expression will always yield an expression that is the same size, where "size" is defined as the number of nodes in the expression tree. *
All top-level fdC definitions (in the interpreter with a list of FunDefC's) are actually closures even though they don't have an explicit environment field. *
Sometimes, we refactor code and rename identifiers.  If we rename the parameter of a function to an identifier that doesn't appear anywhere else in the program, and consistently rename all of its uses in the body of the function, can the program's behavior change? *
(NOTE: This question was edited with "to an identifier that doesn't appear anywhere else in the program" on Sep 19, 2012)
Submit
Clear form
Never submit passwords through Google Forms.
This content is neither created nor endorsed by Google. - Terms of Service - Privacy Policy

Does this form look suspicious? Report