Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
15-411 Compiler Design
[go: Go Back, main page]

   
 

15-411 Compiler Design

Fall 2009
Frank Pfenning
Lecture, TuTh 1:30-2:50, GHC 4102
12 units

This course covers the design and implementation of compiler and runtime systems for high-level languages, and examines the interaction between language design, compiler design, and runtime organization. Topics covered include lexical and syntactic analysis, type-checking, program analysis, code generation and optimization, memory management, and runtime organization.

Prerequisites: 15-213 Introduction to Computer Systems


What's New?

  • (9/10) Test suite 1 for Lab 1 has been released in the svn repository. Both suite 0 and suite 1 will be used to test your compilers.
  • (9/4) Lecture notes for Lecture 2: Instruction Selection are now available.
  • (9/4) The lab is also available as a compressed tar file lab1.tgz. If there are changes to the lab, this file is unlikely to be updated in a timely manner. The subversion repository is your authoritative source.
  • (9/4) Java starter code for Lab 1 on Register Allocation is now available. The next time you svn update in the lab1 directory, you should get this starter code (thanks to Ruy Ley-Wild!).
  • (9/3) A corrected version of the x86-64 Machine-Level Programming overview by Randy Bryant and Dave O'Hallaron is now available.
  • (9/3) LaTeX source for Assignment 1 is now available, in case you want to typeset your answers.
  • (9/2) Assignment 1 on Instruction Selection and Register Allocation is out, due Tue Sep 9, 1:30pm (at the beginning of lecture).
  • (9/2) Lab 1 on Register Allocation is out. You can download the lab from the subversion repository from https://cvs.concert.cs.cmu.edu/15411-f09/<team> with the password that was emailed to you. Please email the instructor in case of problems. The deadline for handin has been moved back by one day (Wed Sep 9, 23:59pm for test files, Wed Sep 16, 23:59pm for compilers).
  • (9/2) Accounts on the Autolab server have been set up.
    Important: Log in with the name of your team (which will be some cheese) and the empty password the first time, then choose a password to share with your partner. Always use your team name for the Autolab server.
  • (9/1) Lectures notes for Lecture 1: Overview and Lecture 3: Register Allocation are now available.
  • (8/31) Accounts on the lab machines have been set up. Please follow the instructions to log into the machines.
  • (8/23) Website created.
  • Prior instances of this course by this instructor:

Course Material

Schedule Lecture schedule, slides, readings, and code
Labs & Assignments Details of assignments, due dates, and policies
Lab Machines Instructions for using the lab machines
Resources Additional course resources

Course Information

Lectures TuTh 1:30-2:50, GHC 4102
Textbook (optional)
Andrew W. Appel
Modern Compiler Implementation in ML
Cambridge University Press, 1998
ISBN 0-521-60764-7 (paperback)
Credit 12 units
Grading 70% Labs, 30% Written assignments
Labs There are 6 labs worth a total of 700 points
Labs can be done individually or in pairs
Assignments There are 5 written assignments worth a total of 300 points
Written assignments must be done individually
Exams There will be no midterm or final exams for this class
Home http://www.cs.cmu.edu/~fp/courses/15411-f09/
Blackboard http://www.cmu.edu/blackboard/
Used only for tracking of grades
Newsgroup academic.cs.15-411

Instructor

  Frank Pfenning
Contact fp@cs or x8-6343
Office Wean Hall 8117
Office Hours Wed 1:00-2:00
   

Teaching Assistants

  Contact Office Hours
Ruy Ley-Wild rleywild@cs Tue 11:00-12:00
GHC 9015
Miguel Silva miguels@cs Thu 4:30-5:30
GHC 7707

[ Home | Schedule | Labs & Assignments | Lab Machines | Resources ]
[ Textbook | Autolab ]
[ Blackboard | academic.cs.15-411 ]

fp@cs
Frank Pfenning