Learning Outcomes versus Collected Course Materials (Sec 1)
| LO1 | LO2 | LO3 | LO4 | LO5 | LO6 | LO7 | LO8 | LO9 | LO10 | LO11 | N/A |
HW1 | X | X | X | | | | | | | | | |
HW2 | | | | | X | X | | X | | | | |
HW3 | | X | | X | | | X | | | | | |
MT1 P1 | | | | | | X | | | | | | |
MT1 P2 | | | | | X | | | | | | | |
MT1 P3 | X | | | | | | | | | | | |
MT1 P4 | | | X | X | | | | | | | | |
MT1 P5 | | | | | | | X | | | | | |
HW4 | | | | | | | | X | | | X | |
HW5 | | | | | | | | | X | X | | |
Midterm and Final problems listed are for version 1 of the test.
LO1 (Learning Outcome 1) -- Have a basic knowledge of the history of programming languages.
LO2 -- Have a basic knowledge of the procedural, object-oriented, functional, and logic programming paradigms.
LO3 -- Understand the roles of interpreters, compilers, and virtual machines.
LO4 -- Critique the design of a programming language
LO5 -- Read and produce context-free grammars.
LO6 -- Write recursive-descent parsers for simple languages, by hand or with a parser generator.
LO7 -- Understand variable scoping and lifetimes.
LO8 -- Write interpreters for simple languages that involve arithmetic expressions, bindings of values to names, and function calls.
LO9 -- Understand type systems.
LO10 -- Understand the implementation of procedure calls and stack frames.
LO11 -- Produce programs in a functional programming language in excess of 200 lines of code.
|