Undergraduate Catalog 2020-2021

CSCI 4000 Programming Languages

This course covers the fundamental concepts on which programming languages are based and the execution models supporting them. Topics include values, variables, bindings, type systems, control structures, exceptions, concurrency, and modularity. Languages representing different paradigms are introduced.

Credits

3

Prerequisite

CSCI 2900

Typically Offered

Demorest: Spring (every other even year)

Student Learning Outcomes

Upon the completion of this course, students will be able to demonstrate the following outcome-based learning skills:

  1. Be able to explain issues involved in the design and implementation of programming languages.
  2. Be able to conduct critical evaluations of existing and future programming languages, including the selection of implementation languages for specific applications.
  3. Construct a regular grammar and write code based on a regular grammar to parse input.