Fall 2023 Course Descriptions
CS 105-01 Programming Languages
M. Kazerounian, R. Townsend
MW 10:30-11:45, Room To Be Announced
E+ Block
Principles and application of computer programming languages. Emphasizes ideas and techniques most relevant to practitioners, but includes foundations crucial for intellectual rigor: abstract syntax, lambda calculus, type systems, dynamic semantics. Case studies, reinforced by programming exercises. Grounding sufficient to read professional literature.
Prerequisite: COMP 15 (Data Structures) and one semester of Discrete Mathematics (COMP/MATH 22 or 61).