Al-Isra University Faculty of Information Technology Department of CS Course Plan 1 ___________________________________________________________________________________ Course No.: Course Classification: Department Compulsory (CS) Time Division: 3 Lectures Semester &Year: 1st 2014/2015 605462 Course Name: Compiler Design Course Website: Course Description (3 credit hours, Prerequisite: 0605401/ Computational Theory) Introduction to compiling, lexical analysis, symbol tables, parsing, syntax-directed translation, type-checking, run-time organization, intermediate code generation, code optimization Course Intended Outcomes At the end of the course, students are expected to learn: The phases of the compiler. The functions of the compiler’s phases. The basic design and construction of the compiler’s phases. Course Outline Week 26 Oct 2 Nov 9 Nov Mon Class Course outline Analysis of the source program The phases of a compiler. Wed Class Introduction to compiling (1.1) – (1.2) [Compilers, Parts of Compilation] (1.3) Lexical Analysis (3.1) – (3.4) [The role of the lexical analyzer] token, pattern and lexemes, specification of tokens, strings and languages, operations on languages FA & NFA, Transition diagram Recognition of tokens Regular Expression, Regular definitions 23 Nov Syntax tree and Parse tree Right, lift most Derivations 30 Nov First Ambiguity Eliminating Ambiguity, Elimination of Left, Recursion (direct and indirect) Writing a Grammar, RE vs. CFG, Verifying the language Generated by a Grammar Recursive – Descent parsing Back tracking First and Follow Functions 16 Nov 7 Dec 14 Dec 21 Dec 28 Dec 4 Jan 11 Jan 18 Jan 25 Jan 1 Feb 8 Feb Left Factoring Recursive – Descent parsing Back tracking Predictive Parser Constructing Predictive parsing table Second Stake implementation of shift-reduce parsing Operator Precedence table construction Bottom up Parsers Constructing SLR Parsing Tables Translation on parse tree Syntax Analysis (4.1) – (4.6) [The Role of the parser, Context Free Grammars] LL (1) Grammar Bottom-Up Parsing Shift- reduce parsing Handle Operator Precedence parsing LR parsers The LR parsing Algorithm Syntax Directed Translation (5.1) –(5.2) [Semantic Actions] Implementation of Syntax-Directed Translator Final Exam Textbook Compilers: Principles, Techniques, and Tools, Aho, Sethi , Ullman IE, Addison _Wesley. Al-Isra University Faculty of Information Technology Department of CS Course Plan 2 ___________________________________________________________________________________ Suggested references 1. Introduction to Compiler Construction, Thomas W. Parson, 1992, Computer Science Press. 2. Grafting a Compiler, Charles N. Fischer, 1988, the Benjamin Cummings pub 3. Comprehensive Compiler Design, O. G. Kakde, 2004, LAXMI pup. 4. Introduction to Compiling Techniques, J. P. Bennett,2002, Tata McGraw-hill. 5. Compiler Design, Reinhard Wilhelm, Dieter Maurer, 1996, Addison-Wesley. Marking First Exam Second Exam Activity Final Exam 25 marks 25 marks 10 marks 40 marks Regulations 1. 2. 3. 4. 5. NO makeup exams! Missing any exam means a ZERO grade will be given for that exam. There are no makeup for quizzes Attendance is mandatory and University regulations will be enforced. All Cheating incidents will be reported to the chair. The following activities are considered cheating: a. Turning in assignment that includes parts of someone else's work. b. Turning in someone else’s assignment as your own. c. Giving assignment to someone else to turn in as their own. d. Copying answers in a test or quiz. e. Taking a test or quiz for someone else. f. Having someone else take a test or quiz for you. See Student handbook for other regulations. Assignments and/or Projects Assignments / Projects H.Ws Quizzes Description Questions will be given after some chapters Two or more quizzes Due Date Marking later later 5 MARK 5 MARK Instructor's Information Section: 1 Lecture Room 4138 Time: 9.30-11 (Mon, Wed) Instructor's Name: Dr Suha Afaneh Office No.: 4126 Email : suha.afaneh@iu.edu.jo Office Hours: Sun, Tue, Thu [10-11] Other office hours are available by appointment Important: The content of this syllabus may not be changed during the current semester Instructor Council Chair