Department: Computer Science and Engineering
Course No.: CST402
Title: Language Processors
Book Website: http://www.orientblackswan.com/BookDescription?isbn=978-93-86235-64-0&t=e
Prerequisite: System Programming and Theory of computation.
Contact Hours and type of course: 5hrs/week (Lecture, Tutorial)
Course Assessment Methods:Test1: Test1,Test2,Teacher assessment, End Semester Exam.
Topics Covered:
UNIT-I
Introduction to Compilers– Compilers and translators, Phases of compiler design, cross compiler, Bootstrapping, Design of Lexical analyzer, LEX.
UNIT-2
Syntax Analysis– Specification of syntax of programming languages using CFG, Top-down parser, design of LL(1) parser, bottom up parsing technique, LR parsing, Design of SLR, CLR, LALR parsers,YACC.
UNIT-3
Syntax directed translation– Study of syntax directed definitions & syntax directed translation schemes, implementation of SDTS, intermediate notations- postfix, syntax tree, TAC, translation of expressions, controls structures, declarations, procedure calls, Array reference.
UNIT-4
Storage allocation & Error Handling– Run time storage administration, stack allocation, symbol table management, Error detection and recovery- lexical, syntactic, semantic.
UNIT-5
Code optimization– Important code optimization techniques, loop optimization, control flow analysis, data flow analysis, Loop invariant computation, Induction variable removal, Elimination of Common sub expression.
UNIT-6
Code generation – Problems in code generation, Simple code generator, Register allocation and assignment, Code generation from DAG, Peephole optimization.
TEXTBOOKS
- Compilers Principles Techniques and Tools by A.V.Aho, Sethi, Ullman, Pearson education.
- Principal of Compiler Design – Alfred V. Aho & Jeffery D. Ullman, Narosa Pub. House.
- Lex and Yacc by Vinu Das, PHI Publication.