Purdue Northwest
CS 51530
Programming Languages, Interpreters and Compilers
Spring, 2021

Professor Roger Kraft
Office: Classroom Office Building, Room 368
Phone: (219) 989-2273
Office hours: 2:30--4:00 TR, and by appointment.
E-mail: rlkraft@pnw.edu

This course is an introduction to the implementation of programming languages using interpreters. The primary goal of this course is to help you understand programming language features by having you implement each features in an interpreter. Some examples of the kind of language features we will be considering are: concrete vs. abstract syntax, static vs. dynamic scope, static vs. dynamic typing, nested functions, first class functions, anonymous functions, closures, strict vs. lazy evaluation, compilation vs. interpretation. We will also look at how a programming language's syntax is specified and how the language's semantics can be described.

This class will meet using the Zoom application. We will meet every Monday and Wednesday from 3:30 to 4:45 pm. Please click on the following invite link to join a class meeting.

We will also use Zoom for office hours. I will have office hours every Tuesday and Thursday afternoon at 2:30. Please click on the following invite link to join an office hour meeting.