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.
Introduction to Compilers– Compilers and translators, Phases of compiler design, cross compiler, Bootstrapping, Design of Lexical analyzer, LEX.
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.
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.
Storage allocation & Error Handling– Run time storage administration, stack allocation, symbol table management, Error detection and recovery- lexical, syntactic, semantic.
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.
Code generation – Problems in code generation, Simple code generator, Register allocation and assignment, Code generation from DAG, Peephole optimization.
- 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.