CS 373
Spring 2008
Theory of Programming Languages
Instructor: Dr. Joan Krone

 

Syllabus

 

Projects
Project Guidelines

Assignment 1
Assignment 2
Assignment 3
Assignment 4
Assignment 6
Assignment 7
Assignment Ch. 8
Chapter 9 Problems
Super Assignments
History Assignment

Abstraction Assignment

Schedule

Final Grade

 

Course Objectives: Students will examine a variety of topics important to the understanding of programming languages, including syntax, semantics, type checking, parameter passing, blocking, scope, control, procedural and data abstraction, and encapsulation. Students will study different classes of languages: procedural, logic, functional, object oriented, and hybrids, together with paradigms related to each. Students will identify criteria for choosing an appropriate language for a particular application. They will study concepts pertinent to language design and implementation, including formal aspects of languages. They will become familiar with choices that force tradeoffs among desirable characteristics of a given language.