UMBC CMSC 331 Fall 2015
Principles of Programming Languages
Home · About· Schedule · HW · Exams · Notes · Code · Resources ·

This course examines the structure and semantics of programming languages. Topics include formal specifications of syntax, declarations, binding, allocation, data structures, data types, control structures, control and data flow, and the implementation and execution of programs and functional programming versus imperative programming. Other possible topics include non-procedural and logic programming, object-oriented programming and program verification. Programming projects will provide experience in several languages. Prerequisite: CMSC 202 and CMSC 203.


Concepts of Programming Languages, latest edition, Robert W. Sebesta. Other recent editions, including those for the Kindle, are acceptable.

companion web site

Tue/Thu 4 - 5:15, ECS 231, August 27 - December 8

Course schedule is available under the "Schedule" tab above.

According to the UMBC Final Exam Schedule, the Final Exam will be in ECS 231, time and date to be determined.


Prof. Charles Nicholas
nicholas at umbc dot edu
ITE 356
Office Hours: Monday/Wednesday 2-3pm or by appointment

Teaching Assistant: