Written Assignments |
Programming Assignments |
CS 4610 - Programming Languages - Exams
This course will have two midterm examinations and one final examination.
The final examination is cumulative.
You are allowed to bring two paper-sides notes (either one page, front and
back or two fronts). You may laser-print them using some micro font if you
like, but it won't really help you: you'll spend all of your time squinting
and looking up information on your cheat sheet.
The exams are not open book. You may not use electronic devices
of any kind.
An answer key for Midterm 1 is available.
An answer key for Midterm 2 is available.
Hints For The Final
The Programming Languages final exam is a take-home essay exam.
The final exam is open book.
In general, all of the topics covered in the course (either in lecture, in
the written assignments, in the programming assignments or in the
required reading) are fair game. The following list of topics is not
necessarily exhaustive (although it is close); you are responsible for all
of the material.
Within the large topics of Typing and Opsem, "basic questions" (e.g., "what
is operational semantics?") will be worth proportionally more points than
"advanced questions" (e.g., "give an opsem rule for this new pyscho
- Big Topics (will be worth more points)
- Basic Blocks, Local Optimizations, Dataflow Analysis
- Context-Free Grammars
- Finite Automata
- LR (Bottom-Up) Parsing
- Operational Semantics
- Type Checking, Typing Rules, Typing Judgments
- Average Topics
- Automatic Memory Management
- Debuggers and Profilers
- Exceptions and Error Handling
- Lexical Analysis
- Linking, Loading and Shared Libraries
- LL (Top-Down) Parsing
- Parsing, Derivations, Ambiguity
- Small Topics (will be worth fewer points)
- Functional Programming (expect only an extra credit question on FP)
- Game Theory
- Quantum Computing
The "big" topics won't necessarily be huge parts of the exam time-wise or
space-wise, they'll just be worth more points. For example, it's not clear
that there are massive detailed questions we can ask about each such topic,
but whatever we do ask will be weighted heavily.
Here are some practice exams from other similar courses at other
universities. These courses are not exactly the same as this one, so
these practice exams may not be indicative.