See exam02/instructions.html.
A practice-exam and solution is available on D2L » Content » exam02.
(The practice-exam's solution is released a bit later than the practice-exam,
to help encourage a practice-take
before looking at the solution).
Our exam might include...
Given a grammar, be able to design structs to represent parse trees for it
(you'll have a choice of racket or Java).
write a recursive-descent parser for that grammar (returning the parse tree).
Be able to write functions which process that parse-tree,
including functions that selectively stop processing sub-trees based on some criterion.
Questions based on bits of code from the Z0–Z4 implementations, possibly modifying that code.
Understanding static scope (let,let*), shadowing,
and function-closures.
prolog questions, including list-based processing.
questions very-similar to #1,#2 from this exam02-practice.
Questions the same-or-similar-to any question on exam01 are certainly fair game.
exam01 will be Oct.21 (Thu) in-class, on-paper, closed-notes.
It may include:
topics from hw01–hw06 (hw-solutions to be posted by Tue. eve)
(incl. the lecture topics of Oct.05 (tail-recursion), and 07:
applying the design-recipe to a new problem or natnums, as you did in binge-tasks),
language paradigms (e.g. what makes a scripting-language a scripting-language; what are some examples of a scripting-language?),
and
advantages & disadvantages of immutable data (from lecture).
For a practice-exam, see D2L (sol'n will also become available).