CS Department Logo

COMS E6998-3
Advanced Topics in Programming
Languages and Compilers
Fall 2014
 Announcements
  Class meets 4:10-6:00pm, Mondays, Room TBA.
First class is on Monday, September 8, 2014.

Class website: http://www.cs.columbia.edu/~aho/cs6998
Class bulletin board: https://courseworks.columbia.edu

 Teaching Staff
 Name   email   Office hours    Location 
Prof. Al Aho   aho@cs.columbia.edu   Mon & Wed 3:00-4:00   513 CSB
 
 Course Overview
  This will be a seminar-based course focused on advanced topics in programming languages and compilers.

Topics will include detailed studies of new programming languages such as Swift and Clojure and advanced compiling and optimization techniques used in modern programming language translators.

The course requirements are in-class presentations and a final project report on a topic of mutual interest. Some proposed topics for Fall 2014:

  • New programming languages
  • New features in legacy languages
  • Program analysis techniques and tools
  • Solver-aided languages
  • Verifying compilers
  • Abstract interpretation
  • Importance of PL libraries
  • PLs for K-12 education
  • Insecure constructs in PLs
  • Authenticated data structures
 Prerequisites
  Fluency in at least one major high-level programming language such as
C, C++, C#, Java, OCaml, or Python
  COMS W4115 Programming Languages and Translators, or an equivalent course
 Schedule Fall 2014
Date  Lecture   
Sep 8   Introduction to Course  
 Background Text
  Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman
Compilers: Principles, Techniques, and Tools, Second Edition
Pearson Addison-Wesley, 2007, ISBN 0-321-48681-1
 Grading
  50% Final Project Report
  50% Class Participation and Presentations

aho@cs.columbia.edu Updated Jun 16, 2014