Undergraduate Catalog

COSC 320 Principles of Programming Languages

This course gives students a basic understanding and appreciation of the various essential programming language constructs, programming paradigms, evaluation criteria, and language implementation issues. The topics cover imperative, object-oriented, functional, logic, and concurrent programming concepts. These concepts are illustrated by examples from various languages such as Pascal, C, C++, C#, Java, Python, Lisp, Scheme, Haskell, and Prolog. Some basic aspects of compiler design, like lexical and syntax analysis, are also covered.

Credits

3

Prerequisite

COSC301

Distribution

2-3-3

Offered

Spring