| ||
COMS E6998-3 Advanced Topics in Programming Languages and Compilers Fall 2012 |
||
| Announcements | |||||||||||||||||||||||||||||||||||||||||
|
Class meets 4:10-6:00pm, Tuesdays, 233 Mudd. First class is on Tuesday, September 4, 2012. Class website: http://www.cs.columbia.edu/~aho/cs6998 Class bulletin board: https://courseworks.columbia.edu | |||||||||||||||||||||||||||||||||||||||||
| Teaching Staff | |||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||
| Course Overview | |||||||||||||||||||||||||||||||||||||||||
|
This will be a seminar-based course focused on advanced topics in programming languages
and compilers.
Topics will include new programming languages such as GO 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. |
|||||||||||||||||||||||||||||||||||||||||
| Prerequisites | |||||||||||||||||||||||||||||||||||||||||
|
Fluency in at least one major high-level programming language such as C, C++, C#, Java, or OCaml |
|||||||||||||||||||||||||||||||||||||||||
| COMS W4115 Programming Languages and Translators, or an equivalent course | |||||||||||||||||||||||||||||||||||||||||
| Schedule Fall 2012 | |||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||
| Project Reports | |||||||||||||||||||||||||||||||||||||||||
| Abhas Bodas, Py++ | |||||||||||||||||||||||||||||||||||||||||
| Neil Deshpande, Erica Sponsler, and Nathaniel Weiss, Analysis of the GO runtime scheduler | |||||||||||||||||||||||||||||||||||||||||
| YoungHoon Jung, MIPlex: Adapting dynamic code modification to the MIPL language | |||||||||||||||||||||||||||||||||||||||||
| Jared Pochtar, The P3 Compiler: Compiling Python to C++ to remove overhead | |||||||||||||||||||||||||||||||||||||||||
| Neeraja Ramanan, JIT through the ages | |||||||||||||||||||||||||||||||||||||||||
| Nikhil Sarda, Application layer thread migration in Java | |||||||||||||||||||||||||||||||||||||||||
| Maria Taku and Eric Powders, Bindings, initialization, scope, and lifetime | |||||||||||||||||||||||||||||||||||||||||
| 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 Dec 16, 2012 |