Computer Science

Williams College

CSCI 334

CSCI 334: Principles of Programming Languages(Q)

Description: This course examines concepts and structures governing the design and implementation of programming languages. It presents an introduction to concepts of compilers and run-time representations of programming languages; features of programming languages supporting abstraction; and programming language paradigms including procedural programming, functional programming, object-oriented programming, polymorphism, and concurrency. Programs will be required in languages illustrating each of these paradigms.

Format: lectures/labs. Evaluation will be based on weekly problem sets and programming assignments, a midterm examination and a final examination.

Fulfills the Quantitative Reasoning requirement

Prerequisites: Computer Science 136.

CS 334 home page

Scheduled Offerings:

Spring 09 334-01 (LEC) TR 9:55-11:10 McGuire

Spring 10 334-01 (LEC) TR 9:55-11:10 Freund