Programming Languages
6.821 · Electrical Engineering and Computer Science · Graduate · Fall 2002
Prof. Michael Ernst
6.821 teaches the principles of functional, imperative, and logic programming languages. Topics covered include: meta-circular interpreters, semantics (operational and denotational), type systems (polymorphism, inference, and abstract types), object oriented programming, modules, and multiprocessing. The course involves substantial programming assignments and problem sets as well as a significant amount of reading. The course uses the Scheme+ programming language for all of its assignments.
The syllabus, on MIT OpenCourseWare
The full course — syllabus, assigned readings, problem sets, exams, and lecture notes — lives on OCW. These open the real thing:
Syllabus ↗
Course overview, grading, schedule
Readings ↗
The assigned reading list, session by session
Assignments ↗
Problem sets and projects
Full course on OCW ↗
Everything, including lecture materials
Attribution
Prof. Michael Ernst. 6.821 Programming Languages. Fall 2002. Massachusetts Institute of Technology: MIT OpenCourseWare, https://ocw.mit.edu. License: CC BY-NC-SA 4.0.
Course materials are © their authors and licensed CC BY-NC-SA 4.0. CurrMana links to the source and does not re-host them.