COURSE DESCRIPTION

NAME OF INSTITUTION Lahore Garrison University
PROGRAM (S) TO BE EVALUATED Computer Science , Fall 2021
Course Description :
Course Code CSC373
Course Title Compiler Construction
Credit Hours 3+0
Prerequisites by Course(s) and Topics Data Structure, Theory of automata
Assessment Instruments with Weights (homework, quizzes, midterms, final, programming assignments, lab work, etc.) SESSIONAL (Quizzes, Assignments, Presentations) =25 %
Midterm Exam =25 %
Final Exam = 50%
Course Coordinator M. Basit Ali
URL (if any)
Current Catalog Description
Textbook (or Laboratory Manual for Laboratory Courses) Compilers: Principles, Techniques, and Tools By Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman, Contributor Jeffrey D. Ullman, Addison-Wesley Pub. Co., 2nd edition, 2006
Reference Material 1. Modern Compiler Design, by Dick Grune, Henri E. Bal, Ceriel J. H. Jacobs, Koen G. Langendoen, John Wiley, 2000. 2. Modern Compiler Implementation in C, by Andrew W. Appel, Maia Ginsburg, Contributor Maia Ginsburg, Cambridge University Press, 2004. 3. Modern Compiler Design by Dick Grune, Henri E. Bal, Ceriel J. H. Jacobs, Koen G. Langendoen, 2003, John Wiley & Sons.
Course Goals
Course Learning Outcomes (CLOs):
At the end of the course the students will be able to:DomainBT Level*
* BT= Bloom’s Taxonomy, C=Cognitive domain, P=Psychomotor domain, A= Affective domain
Topics Covered in the Course, with Number of Lectures on Each Topic (assume 15-week instruction and one-hour lectures)
WeekLectureTopics Covered
Week 1 1 General Introduction
2 Detailed introduction of Compiler, Preprocessor, Assembler, Linker/Loader, Interpreter
Week 2 3 Compiler, History of Compiler, Properties of Compiler
4 Compilation two parts, Compilation Process in General
Week 3 5 Compilation Process in Brief: Lexical Analysis, Syntax Analysis
6 Compilation Process in Brief: Sementic Analysis, Intermediate Code, Code Optimization, Code Generation
Week 4 7 Symbol Table: Construction of Symbol table, Interaction Between the symbol table and other phases of compiler
8 One-Pass Compiler
Week 5 9 Two-Pass Compiler
10 Back end of Compiler
Week 6 11 Chapter 3: Lexical Analysis, Function of Lexical Analyzer
12 Input Buffering, Specification of Tokens
Week 7 13 Conversion of Regular Expression into NFA
14 Conversion of Regular Expression into DFA
Week 8 1 hours Mid Term
Week 9 15 Conversion into minimized DFA
16 Conversion of DFA into minimized DFA
Week 10 17 What are Grammars? Context-Free Grammar, CFG Terminologies, Examples
18 Syntax Analysis
Week 11 19 Define Parser, Role of Parser, and Derivations, Types of Derivations
20 Parse Tree, Types of Parse Tree, Examples and Ambiguity Examples
Week 12 21 Precedence, Examples and Left-Recursive
22 Types of Parsing, Top-Down Parsing Introduction
Week 13 23 Bottom Up Parsing, Backtracking, Predictive Parsesr
24 Recursive Descent Parser (RDP) construction rules
Week 14 25 Recursive Descent Parser (RDP) construction algorithm implementation and LL(1) Parser Construction Method
26 First Function with examples and FOLLOW Function with examples
Week 15 27 Input String Running Through LL(1) Table/Presentations
28 Bottom Up Parsing and Shift Reduce Parsing
Week 16 29 LR(0) Parse Table
30 SLR(1) Parse Table
Week 17 2 hours Final Term
Laboratory Projects/Experiments Done in the Course
Programming Assignments Done in the Course
Instructor Name M. Basit Ali
Instructor Signature
Date