GUJARAT TECHNOLOGICAL UNIVERSITY
Syllabus for Integrated MSc, 6th Semester
Branch: Information Technology
Subject Name: Compiler Design
Subject Code: 1360504
Teaching and Examination Scheme
Teaching Scheme Credits Examination Marks
Total
Theory Marks Practical Marks
L T P C Marks
ESE(E) PA (M) PA (I) ESE(V)
4 0 2 5 70 30 20 30 150
Content:
Sr. Content Module
No. Teaching
Weightage
Hours
(%)
Overview of the Compiler and its Structure:
Language processor, Applications of language processors,
Definition-Structure-Working of compiler, the science of
1. building
1 compilers, Basic understanding of interpreter and 3 15
assembler. Difference between interpreter and compiler.
Compilation of source code into target language, Cousins of
compiler, Types of compiler
2. Lexical
2 Analysis: The Role of the Lexical Analyzer,
Specification of Tokens, Recognition of Tokens, Input,
6 15
elementary scanner design and its implementation (Lex),
Applying concepts of Finite Automata for recognition of tokens.
3. Syntax
3 Analysis: Understanding Parser and CFG (Context Free
Grammars), Left Recursion and Left Factoring of grammar Top
Down and Bottom up Parsing Algorithms, Operator-Precedence
Parsing, LR Parsers, Using Ambiguous Grammars, Parser
Generators, Automatic Generation of Parsers. Syntax-Directed 12 25
Definitions, Construction of Syntax Trees, Bottom-Up
Evaluation of S-Attributed Definitions, L-Attributed Definitions,
syntax directed definitions and translation schemes
4. Error
4 Recovery Error Detection & Recovery, Ad-Hoc and
Systematic Methods 4 10
5. Intermediate-Code
5 Generation: Variants of Syntax Trees,
Three-Address Code, Types and Declarations, Translation of
Expressions, Type Checking, Syntax Directed Translation 5 10
Mechanisms, Attributed Mechanisms And Attributed Definition.
6. Run-Time
6 Environments: Source Language Issues, Storage
Organization. Stack Allocation of Space, Access to Nonlocal 4 10
Data on the Stack, Heap Management,
7. Code
7 Generation and Optimization: Issues in the Design of a
Code Generator, The Target Language, Addresses in the Target
Code, Basic Blocks and Flow Graphs, Optimization of Basic
6 15
Blocks, A Simple Code Generator, Machine dependent
optimization, Machine independent optimization Error detection
of recovery
w.e.f. 2024-25 [Link] Page no. 1 of 2
GUJARAT TECHNOLOGICAL UNIVERSITY
Syllabus for Integrated MSc, 6th Semester
Branch: Information Technology
Subject Name: Compiler Design
Subject Code: 1360504
Suggested Specification table with Marks (Theory):70
Distribution of Theory Marks
R Level U Level A Level N Level E Level C Level
10 25 20 10 05 00
R: Remembrance; U: Understanding; A: Application, N: Analyze and E: Evaluate C: Create and
above Levels (Revised Bloom’s Taxonomy)
Text Books
1. Compiler Tools Techniques - [Link], Ravi Sethi, [Link], Addison Wesley
2. The Theory And Practice Of Compiler Writing - Trembley J.P. And Sorenson P.G.
Mcgraw-Hill
Reference Books:
1. Modern Compiler Design - Dick Grune, Henri E. Bal, Jacob, Langendoen, WILEY India
2. Compiler Construction - Waite W.N. And Goos G., Springer Verlag
3. Compiler Construction-Principles And Practices - [Link], Mcmillian
4. Principles of Compiler Design, V. Raghavan, McGrawHill
Course Outcome:
After learning the course, the students should be able to:
Sr. CO statement
No.
CO-1 Understand the basic concepts; ability to apply automata theory and knowledge on
formal languages.
CO-2 Ability to identify and select suitable parsing strategies for a compiler for various
cases. Knowledge in alternative methods (top-down or bottom-up, etc).
CO-3 Understand backend of compiler: intermediate code, Code optimization Techniques
and Error Recovery mechanisms
CO-4 Understand issues of run time environments
w.e.f. 2024-25 [Link] Page no. 2 of 2