Programming Languages And Compilers I

16:198:515

Fall 2009Fall 2007
  • Kremer, Ulrich

Description

This course covers concepts and techniques used in the description and definition of programming languages, and in the construction of their translators.

Alex Borgida, Ulrich Kremer, Chung-chieh Shan

Credits: 3

Category: B

Prerequisites:

An undergraduate data structures and algorithms course, and an undergraduate compiler course (or permission of instructor)

Semesters Offered:

Fall

Topics:

Topics chosen from among:

    * LR parsing techniques
    * syntax-directed translation, attribute grammars;
    * type systems, type checking and polymorphism;
    * data abstraction;
    * object-oriented, functional and logic programming paradigms (using Prolog, SML/Scheme and C++/Java);
    * language semantics (axiomatic, denotational);
    * exception handling;
    * topics in compiling for parallel architectures;
    * machine independent optimization and compile-time analysis

Expected Work:

Written homework, with three programming assignments. A final examination, and possibly a midterm.

Select A Course

Login