CS322 PRINCIPLES OF PROGRAMMING LANGUAGES (4
Cr.)
COURSE DESCRIPTION
Prerequisites:
MA240, CS222, CS330
(concurrent enrollment in CS330 permitted) or permission of instructor.
This course will survey the concepts and characteristics that are currently employed in
modern programming languages. These include assignment effects, procedure
activations, scope rules, type systems for conventional imperative programming languages,
and data encapsulation and inheritance in the object-oriented paradigm. This course
will also cover concurrent and non-imperative languages (i.e., functional and logic).
The implementation of high-level languages will be examined, including the major
components of modern compilers (e.g., lexical analyzers, parsers, and machine code
generation), compiler theory (e.g., push-down automata and formal grammars), and
translator-based language design issues (e.g., compilers versus interpreters, single-pass
versus multi-pass compilers).
|






CS101 CS120 CS120A CS122 CS201 CS222 CS228 CS295 CS297 CS298 CS302 CS322 CS326 CS330 CS370 CS422 CS424 CS426 CS442 CS444 CS446 CS460 CS470 CS480 CS490 CS491 CS495 CS496 CS497 CS498 |