CMSI 3801 Languages and Automata I

4 semester hours

A comparative study of the rationale, concepts, design, and features of several major programming languages, including bindings, scope, control flow, type systems, subroutines and coroutines, modules, objects, asynchronous programming, concurrency, and metaprogramming. Major attention is given to the following broad categories of languages: systems, enterprise, scripting, experimental, and esoteric. Compiler architecture and its relationship to formal models of computation. 

Prerequisites: CMSI 2120  or CMSI 3630 .

Print-Friendly Page (opens a new window)