• To provide practical programming skills necessary for designing and implementing the various phases of a compiler
  • To learn and use the compiler construction tools such as LEX and YACC for implementing the various phases of a compiler



  • Ability to apply knowledge of LEX and YACC tools to develop a new compiler
  • Ability to optimize a code



  • Develop programs to implement regular expression to recognize and validate tokens
  • Develop programs to implement a Lexical Analyzer using LEX/FLEX for identifying and validating tokens of a language
  • Develop programs to identify left recursions and left factors and eliminate them from the grammar given
  • Develop programs using YACC to construct a parse tree and check the syntax of the statement
  • Develop programs using LEX & YACC to generate Intermediate code for a given fragment of a program
  • Develop program to optimize the intermediate codes
  • Develop program to generate an equivalent assembly program for a given HLL program fragment