15-312 Foundations Of Programming Languages Jun 2026
Searching for is not just looking for a syllabus. It is a signal. It indicates that you are ready to move from a consumer of programming languages to a creator of them.
Inductive/coinductive types, subtyping, intersection types, and inheritance. The Student Experience: SML and Proofs 15-312 foundations of programming languages
Students often joke about "Harper's Horrors," referencing the steep learning curve. The assignments require a shift in thinking. You cannot "hack" a solution in 15-312. You cannot copy-paste code from Stack Overflow. To succeed, you must internalize the mathematical logic and apply it consistently. Searching for is not just looking for a syllabus
It would be disingenuous to discuss 15-312 without mentioning its difficulty. The course has a reputation for being one of the most challenging undergraduate electives at Carnegie Mellon. You cannot "hack" a solution in 15-312
At its core, is an undergraduate/graduate course offered by CMU’s Computer Science Department. It sits at the intersection of mathematical logic, type theory, and computation.
Keywords integrated: 15-312 Foundations of Programming Languages, type safety, operational semantics, lambda calculus, SML, Twelf.
: Much of the course is based on Robert Harper’s draft book, Practical Foundations for Programming Languages Lecture Notes : Supplementary notes from professors like Frank Pfenning Jan Hoffmann