cs160-lec1 - CMPSC 160 Translation of Programming Languages...

Info iconThis preview shows pages 1–9. Sign up to view the full content.

View Full Document Right Arrow Icon
CMPSC 160 Translation of Programming Languages Lecture 1: Introduction & Overview of Compilers
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CMPSC 160 – Winter 2011 Instructor: Tevfik Bultan (bultan@cs.ucsb.edu) Office: HFH 2123 Office Hours: Tuesdays & Thursday 11:00 to 12:00 at HFH 2123 Teaching Assistant: Ivan Bocic (bo@cs.ucsb.edu) Office Hours: Monday & Wendesday 1:00 to 2:00pm at PHELP 1413 Classes: Tuesdays and Thursdays 12:30 to 1:45 at PHELP 1508 Discussion: Fridays 11:00 to 11:50 at PHELP 1508 Information about the class will be posted on the class web page http://www.cs.ucsb.edu/~cs160/index.html Class mailing list: cs160@cs.ucsb.edu Messages sent to this address will go to the instructor, the TA and ALL the students in the class If you have questions that you do not want to share with other students send e-mail to bultan@cs.ucsb.edu and cc bo@cs.ucsb.edu
Background image of page 2
Announcements No discussion section tomorrow I am out of town on Tuesday next week so we will have the discussion section on Tuesday next week I will have one lecture on Thursday and I will have another lecture on Friday next week during the discussion hour
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CMPSC 160 Catalog Description: Study of the structure of compilers. Topics include: lexical analysis; syntax analysis including LL and LR parsers; type checking; run-time environments; intermediate code generation; and compiler- construction tools. Prerequisites: CMPSC 130A and CMPSC 138 Prerequisites by Topic: Automata theory and formal languages; Programming in Java; Data structures, algorithms, and complexity
Background image of page 4
Course Material We will use the following textbook: “Engineering a Compiler” by Keith D. Cooper and Linda Torczon Morgan Kaufman (Elsevier) There will be reading assignments from the textbook for each week and they will be posted on the class webpage First reading assignment: Read Chapter 1 from the textbook The lecture notes will be posted on the class webpage
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Course Work The course requirements include Five projects a midterm and a final exam The projects (and exams) are individual efforts The final grade will be determined according to the following weight projects: 50% exams: 50%
Background image of page 6
Course Projects There will be 5 projects – The first project will be a warm-up project about a calculator – The goal of the following 4 projects will be to build a compiler Projects 2 to 5 cover all parts of the compilation process – Read the input and convert it to tokens – Parse code – Check code for semantic properties (type checking) – Generate executable x86 machine code Compiler will work on a simple language You will use well-known tools and some C++ code that we provide
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Course Topics Overview of compilers Lexical analysis (Scanning) Syntactic analysis (Parsing) Type checking Runtime environments Symbol tables Intermediate representations Code generation Code optimization (unfortunately we run out of time)
Background image of page 8
Image of page 9
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 45

cs160-lec1 - CMPSC 160 Translation of Programming Languages...

This preview shows document pages 1 - 9. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online