COP 4020 - Programming Languages
Prerequisites: Computer Engineering majors: COP 3530 - Data Structures & Algorithms
Computer Science and Data Analytics majors: COP 4415 - Data Structures and COP 4531 - Algorithm Design & Analysis
Co-requisite or Prerequisite: None
Course Description: The course covers programming models underlying different languages. The course will help students make informed design choices in languages supporting multiple complementary approaches. Students will be introduced to the principles of how programming language features are defined, composed, and implemented. In addition, the effective use of programming languages, and appreciation of their limitations, is emphasized by introducing main constructs on programming languages as well as lexical and syntax analysis. The course will include the following topics: Introduction to the theory of computation, including models of computation such as Turing machines; theory of programming languages; including grammars; parsing; syntax and semantics.
Add to Portfolio (opens a new window)