CS 558 Programming Languages
In-depth study of current and historical issues in the design, implementation, and application of programming languages. Topics range from basic to advanced. Areas include syntax, semantics, scoping, typing, abstraction, exceptions, and concurrency. Computational paradigms such as functional, logic, and/or object oriented are analyzed. Several "recent" programming languages used. Also offered as CS 658 and may be taken only once for credit.