3.00 Credits
The study of programming languages examines the essential concepts that are common to modern programming languages. A broad range of issues is considered. Techniques for formal specification of syntax are presented. Several essential features of modern programming languages are discussed, including information binding, control structures, scope rules, data types and data abstraction, concurrency, recursion, input/output, and execution environment. Four different computational models or paradigms for programming languages are considered: the imperative, functional, logic-oriented and object-oriented models. Examples are drawn from a number of existing languages, such as Ada, LISP, FORTRAN, COBOL, Pascal and C. Pre-Requisite: CIS207 Offered: Spring Term Previous Course ID - CIS201