Compiler Design
Compiler Design
Compiler Design
Content:
w.e.f. AY 2020-21
GUJARAT TECHNOLOGICAL UNIVERSITY
Bachelor of Computer Engineering
Subject Code: 3170701
4 Error Recovery 04
Error Detection & Recovery, Ad-Hoc and Systematic Methods
5 Intermediate-Code Generation: 05
Variants of Syntax Trees, Three-Address Code, Types and Declarations, Translation of
Expressions, Type Checking, Syntax Directed Translation Mechanisms, Attributed
Mechanisms And Attributed Definition.
6 Run-Time Environments: 04
Source Language Issues, Storage Organization. Stack Allocation of Space, Access to
Nonlocal Data on the Stack, Heap Management,
7 Code Generation and Optimization: 06
Issues in the Design of a Code Generator, The Target Language, Addresses in the Target
Code, Basic Blocks and Flow Graphs, Optimization of Basic Blocks, A Simple Code
Generator, Machine dependent optimization, Machine independent optimization Error
detection of recovery
8 Instruction-Level Parallelism: 04
Processor Architectures, Code-Scheduling Constraints, Basic-Block Scheduling, Pass
structure of assembler
Note: This specification table shall be treated as a general guideline for students and teachers. The actual
distribution of marks in the question paper may vary slightly from above table.
Text Books
1. Compiler Tools Techniques - A.V.Aho, Ravi Sethi, J.D.Ullman, 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 - D.M.Dhamdhere, Mcmillian
4. Principles of Compiler Design, V. Raghavan, McGrawHill
Page 2 of 4
w.e.f. AY 2020-21
GUJARAT TECHNOLOGICAL UNIVERSITY
Bachelor of Computer Engineering
Subject Code: 3170701
Course Outcomes:
Sr No Title of Experiment
1 Implementation of Finite Automata and String Validation
2 Introduction to Lex Tool.
3 Implement following Programs Using Lex
a. Generate Histogram of words
b. Ceasor Cypher
c. Extract single and multiline comments from C Program
4 Implement following Programs Using Lex
a. Convert Roman to Decimal
b. Check weather given statement is compound or simple
c. Extract html tags from .html file
5 Implementation of Recursive Descent Parser without backtracking
Input: The string to be parsed.
Output: Whether string parsed successfully or not. Explanation:
Students have to implement the recursive procedure for RDP for a typical grammar. The
production no. are displayed as they are used to derive the string.
6 Finding “First” set
Input: The string consists of grammar symbols.
Output: The First set for a given string.
Explanation:
The student has to assume a typical grammar. The program when run will ask for the string
to be entered. The program will find the First set of the given string.
7 Generate 3-tuple intermediate code for given infix expression
8 Extract Predecessor and Successor from given Control Flow Graph
9 Introduction to YACC and generate Calculator Program
10 Finding “Follow” set
Input: The string consists of grammar symbols.
Output: The Follow set for a given string.
Explanation:
Page 3 of 4
w.e.f. AY 2020-21
GUJARAT TECHNOLOGICAL UNIVERSITY
Bachelor of Computer Engineering
Subject Code: 3170701
The student has to assume a typical grammar. The program when run will ask for the string
to be entered. The program will find the Follow set of the given string.
11 Implement a C program for constructing LL (1) parsing.
12 Implement a C program to implement LALR parsing.
13 Implement a C program to implement operator precedence parsing.
Page 4 of 4
w.e.f. AY 2020-21