Spring 2014

Compiler Design

Listed in: Computer Science, as COSC-371

Formerly listed as: COSC-37

Description

An introduction to the principles of the design of compilers, which are translators that convert programs from a source language to a target language. Some compilers take programs written in a general-purpose programming language, such as C, and produce equivalent assembly language programs. Other compilers handle specialized languages. For instance, text processors translate input text into low-level printing commands. This course examines techniques and principles that can be applied to the design of any compiler. Formal language theory (concerning regular sets and context-free grammars) is applied to solve the practical problem of analyzing source programs.

Topics include: lexical analysis, syntactic analysis (parsing), semantic analysis, translation, symbol tables, run-time environments, code generation, optimization, and error handling. Each student will design and implement a compiler for a small language. Offered in alternate years.

Requisite: COSC 112 and 161. Spring semester. Professor L. McGeoch.

COSC 371 - L/D

Section 01
M 02:00 PM - 02:50 PM SMUD 207
W 02:00 PM - 02:50 PM SMUD 207
F 02:00 PM - 02:50 PM SMUD 207

Offerings

Other years: Offered in Spring 2008, Spring 2010, Fall 2011, Spring 2014, Fall 2015, Fall 2024