BU CAS CS 520
Principles of Programming Languages
Semester: Fall 2012

Course Information

  • Instructor: Hongwei Xi (email: hwxi AT cs DOT bu DOT edu)
  • Instructor's Office: MCS 287
  • Instructor's Office Hours: TR: 2-3; W: 4-6; by appointment
  • Grader: TBA
  • Syllabus: (pdf) (ps)
  • A week-by-week schedule
  • Lecture Times: Tuesday and Thursday 12:30-2:00
  • Classroom: MCS B33
  • Midterm: Take-home
  • Final Project: Presentation

Overview

Principles of Programming Languages is a course that introduces students to some fundamental principles and techniques in modern programming language design and implementation. The course mainly covers type theories in programming and emphasizes the need for mathematical formalism in both describing and analyzing programming languages and programs.

Prerequisites

  • Familiarity with programming in general.
  • CS320 (Concepts of Programming Languages) or equivalents.

Reference Books

Programming Languages

  • ATS (this mode may be helpful if you use emacs to edit ATS source code)

Notes

  • Untyped Lambda-Calculus (pdf)
  • Simple Types (pdf)

Class Calendar

    Assignments

    Midterm

      Final Project

      Solutions

      This page is maintained by Hongwei Xi (email: hwxi AT cs DOT bu DOT edu).