Explain about Lex, Yacc , Flex and Bison?
In general the Compiler or Interpreter for a programming language is often decomposed into 2 parts: Read the source program and discover its structure Process this structure Lex and Yacc can generate program fragments that solve the first task. The task of discovering the source structure again is decomposed into subtasks: 1)Split the source file into tokens (Lex) Find the hierarchical structure of the program (Yacc). Lex is a program generator designed for processing character input streams. Yacc is a general tool for describing the input to a computer program. It specifies a structure and control of flow. Flex is a tool that reads the given input file for generating scanners (an exe file) Bison is a general purpose Parser generator that converts a grammar description into a C program to parse that grammar. Bison is upward compatible with Yacc.