4.00 Credits
Introduction to the fundamental principles of programming language design, semantics, and implementation. Structure and vocabulary of modern programming languages. Programming language topics include formal semantics of programming, name binding, scope, data types, type systems, control flow, object orientation, scripting languages, functional languages, polymorphism, and concurrency. Labs and assignments will include experience in writing programs in a nonprocedural programming paradigm.
Prerequisite:
CSCI 362
Corequisite:
CSCI 362