Principles of Programming Group

Computer Science Department

Carnegie Mellon University


Graduate Courses

Number Name Instructor
15-811 Advanced Topics on Computer Security: Formal Foundations of Software Security Matt Fredrikson
15-811 Verifying Complex Systems Bryan Parno
15-814 Types and Programming Languages Frank Pfenning
15-819 Advanced Topics in Programming Languages: Domain-Specific Languages Jan Hoffmann

Undergraduate Courses

Number Name Instructor
15-122 Principles of Imperative Computation Iliano Cervesato and Zeliha Dilsun Kaynar
15-150 Functional Programming Stephen Brookes
15-210 Parallel and Sequential Data Structures and Algorithms Guy Blelloch and Charles Garrod
15-312 Foundations of Programming Languages Robert Harper
15-316 Software Foundations of Security and Privacy Matthew Fredrikson
15-317 Constructive Logic Giselle Reis & Karl Crary
15-411 Compiler Design Seth Goldstein