The exam will be open-book. This includes not only the textbook but also any course notes, returned work, posted slides, or other printed materials. However, the use of any electronic device is prohibited.
New rule: Any study materials that are shared between multiple students must also be shared with the instructor.
This exam is not cumulative (although the final will be). Coverage will be the material of Classes 11-17 and Labs 5-8.
For this exam, you should be able to:
You should also have a good understanding of:
Finally, you should know the meaning of these terms, and be able to use them correctly in a meaningful discussion:
1st/2nd/3rd-class Abstract Syntax Tree Activation record Allocation Binding Call site Central Reference Table Closure Compile-time Declaration order Deep binding Dynamic Dynamic link Forward declaration Function call stack Global Heap (memory allocation) LALR Lexical frame Lifetime Local Mutual recursion Name Name resolution Nested function Nested scope Non-local reference Overloading Parse Tree Polymorphism Referencing environment Run-time Scope Shallow binding SLR Stack (memory allocation) Static Static link Symbol table Syntactic sugar