aher.dev

Unofficial and not affiliated with Duke. A snapshot of classes that were open on 22 Oct 2026. Seats change daily, so confirm in DukeHub before you plan around anything.

Courses / Graduate School / COMPSCI

COMPSCI 552

Programming Languages

Danfeng Zhang

Description from DukeHub

Whether designing systems, writing high-quality code or learning a new programming language, the ability to reason about language behavior and structure is a critical skill. Through analytical comparison, the course examines core topics such as language syntax and semantics, type systems, control structures, memory management, as well as cutting-edge language features, such as formal verification and static program analysis. Emphasis will be placed on both theoretical foundations and practical insights. By the end of the course, students will be able to critically evaluate language design choices, understand the trade-offs involved in language implementation, and apply this knowledge to write clearer, more reliable programs. Prerequisite: Data Structure, Discrete Math.

Skills

  • programmingdescription: "code" and 2 more
  • writingdescription: "writing" and 1 more
  • designdescription: "designing" and 1 more

AI-resilient: 0 of 5

  • No: Physical, lab or field work
  • No: Live work with people
  • No: Judgment someone is accountable for
  • No: A craft you practice with your hands or body
  • No: Small, in-person format

The checks lean on Microsoft Research, Working with AI (2025), which found generative AI applies least to physical work and hands-on work with people. A signal, not a promise. How the score works

More in COMPSCI

All COMPSCI courses · All of Graduate School