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)
Class Calendar
- Assignment 0:
Due Monday, the 26th of January, 2015
Links: assignment0.html
- Assignment 1:
Due Monday, the 16th of February, 2015
Links:
assignment1.dats
(Patsoptaas)
- Assignment 2:
Due Monday, the 23th of February, 2015
Links: README
- Assignment 3:
Due Wednesday, the 25th of February, 2015
Links:
assignment3.dats
(Patsoptaas)
- Assignment 4:
Due Wednesday, the 4th of March, 2015
Links:
assignment4.dats
(Patsoptaas)
- Assignment 5:
Due Monday, the 16th of March, 2015
Links:
assignment5.dats
LIGHT2 LIGHT4
- Assignment 7:
Due Wednesday, the 1st of April, 2015
Links:
assignment7.txt
- Assignment 8:
Due Wednesday, the 13th of April, 2015
Links:
assignment8.txt
- Assignment 9:
Due Thursday, the 30th of April, 2015
Links:
assignment9.txt