Purdue Northwest
CS 31600
Programming Languages
Spring, 2023

Professor Roger Kraft
Office: Classroom Office Building, Room 368
Phone: (219) 989-2255
Office hours: 11:00--12:00 MTWR, and by appointment.
E-mail: rlkraft@pnw.edu

This course is an introduction to the theory of programming languages. We will look at how programming language syntax is specified, how a programming language's semantics can be described, and how a programming language can be implemented using an interpreter or a compiler. We will consider various types of programming languages, like imperative, applicative (i.e., functional), and object oriented languages. We will study ideas common to all programming languages, like variable scope, data types, control flow, and procedure abstraction.