CS323: Programming Languages

Course Summary:

The purpose of this course is to increase your capacity to express ideas using a programming language, to allow you to choose an appropriate programming language for a design task, to give you the ability to quickly learn new languages, and to teach you new and very different programming languages including Perl, FORTRAN, C#, Scheme, and Prolog.


Evaluation and History (Sebesta 1 & 2)

Names, Bindings, Type Checking, Scope (Sebesta 5)

Data Types (Sebesta 6)

Expressions and Assignments (Sebesta 7)

Control Flow (Sebesta 8)

Subprograms (Sebesta 9, 10)

Abstract Data Types and Encapsulation (Sebesta 11)

Object-Oriented Programming: Smalltalk (Sebesta 12)

Functional Programming: Scheme (Sebesta 15)

Logic Programming: Prolog (Sebesta 16)