EECS 762. Programming Language Foundation I. 3 Hours.

This course presents a basic introduction to the semantics of programming languages. The presentation begins with basic lambda calculus and mechanisms for evaluating lambda calculus terms. Types are introduced in the form of simply typed lambda calculus and techniques for type inference and defining type systems are presented. Finally, techniques for using lambda calculus to define, evaluate and type check common programming language constructs are presented. Prerequisite: EECS 662 or equivalent. LEC.