Compiler Construction (FND2)

Spring term 2009

Exams & Assessments

General rules according to which we want to perform the assessments and the calculation of the final grade for the course of compiler construction are here.

Time Schedule in Brief

Exam - 2nd part (60 min): 26. Juni 2009 (11h30-12h30)

Resit - 1st and 2nd part (120 min): 9. Juli 2009 (11h30-13h30)

Portfolio of your compiler must be hand in: 6. Juli 2009

Assignment on your implementation of a compiler: 8. Juli 2009

Time schedule for the assessment is linked here

Sheets

Week Info Sheets
1 Introduction Course outline / Introduction: Phases of a compiler
2 A Brief Introduction to XML ABriefIntroXML.pdf
3-4 Lexical Analysis LexicalAnalysis.pdf
5 JFlex IntroJFlex.pdf
6 Introduction to Syntax Analysis (List of Problems) SyntaxAnalysis.pdf
7 Predictive Parsing Mechanisms PredictiveParsing.pdf
-- First Exam End of the first quarter
8 Parsing Tricks - needed all the time ParsingTricks.pdf
9-11 LR Parsing Methods
9-10 Part 1: LR(0) parser LRParsingMethodsPart1.pdf
10-11 Part 2: LR(1) parser / LALR parser LRParsingMethodsPart2.pdf
12 Semantic Analysis SemanticAnalysis.pdf
13 Translation to (Intermediate) Code TranslationToIntermediateCode.pdf
14 Doing the rest: Putting it all together To answer questions
-- Second Exam End of the second quarter

Practical Tasks

Week Info Lab
1 Initial task (structured documents) CollectionsOfDocs.zip
2 Design your XML DTD (structured documents) DesignYourXMLDTD.pdf
3-5 Develop a lexer using an XML DTD (Read the ExerciseLexer.pdf-file at first) ExerciseLexer.zip
6-7 Introduction to parsing mechanisms (specification via context-free grammars) IntroParserExercise.pdf
8-9 On the design of parsing mechanism focussing on shift-reduce parsers DesignParserExercise.pdf
10-11 Specify the parser by the Yacc grammar ParsingSpecYacc.pdf
11-12 Implementation of modules for semantic analysis SemanticAnalysisSimpleXML.pdf
13 Instruction selection for XML InstructionSelectionXML.pdf
14 The End: Guideline for putting it all together PuttingAllTogether.pdf
-- Assignment for the compilers Time schedule

Note that practical tasks can be done in groups of two or three students (who can also be assessed together).

Assessments

Course Information

Course Book: Andrew W. Appel: Modern Compiler Implementation in Java.
Cambridge University Press, Cambridge 2002, 2nd edition. (ISBN 052182060 X)
(You should have copy of this book.)

If you have any questions concerning compiler construction, feel free and contact us

Julia Stoll and Jeu van Loon