Explanation of Solution
Syntax analyzers are based on grammars:
Syntax analyzer phase in compilation process is the step in which the “tokens” in the programs are identified and recognize whether they are specified in a valid way.
So, syntax analyzers are based on the syntax of the language. The syntax is often described formally by Context Free Grammars (CFG) or Backus-Naur Form (BNF).
Context Free Grammars (CFG):
There were four classes of grammars which describes the four classes of languages. Context Free Grammars was one of the four classes which described the syntax of whole
Backus-Naur Form (BNF):
BNF is a natural notation for describing syntax described by John Backus and Peter Naur. It is very similar to Context Free Grammars.
Thus, syntax is based on BNF (or context free grammar from) due to three main reasons as described below:
- Instead of using some informal notations, syntax description with context free grammars are precise and unambiguous. This is easy to understand for both human and software systems.
- The formal description of the syntax, CFG or BNF both are used as the direct basis of syntax analyzer.
- Context free grammars or BNF are easy to implement because of their modular nature. That is, they can be implemented in modules.
Want to see more full solutions like this?
Chapter 4 Solutions
CONCEPTS OF PROGRAM...(PEARSON CHANNEL)
- A small number of grammars may be parsed using a variety of techniques.arrow_forwardWhy do compilers utilize techniques to grammar parsing that are only successful with a subset of the available grammars?arrow_forwardExplain the three reasons why lexical analysis is separated from syntaxanalysisarrow_forward
- Np Ms Office 365/Excel 2016 I NtermedComputer ScienceISBN:9781337508841Author:CareyPublisher:Cengage