
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Found 206 Articles for Programming Languages

2K+ Views
Top-Down Parsing with BacktrackingIn Top-Down Parsing with Backtracking, Parser will attempt multiple rules or production to discover the match for input string by backtracking at every step of derivation. So, if the used production does not give the input string as needed, or it does not match with the needed string, then it can undo that shift.Top-Down Parsing without BacktrackingAs backtracking looks more powerful by which we can select different alternatives. But backtracking cannot be applied or implemented so easily in parsing. There are two types of Top-Down Parsing without Backtracking, which are as follows −Recursive Descent ParserPredictive ParserRecursive Descent ... Read More

6K+ Views
SolutionComputation of FIRSTE →TE′Applying Rule (4b) of FIRSTSince FIRST (T) does not contain ε, or T does not derive ε.∴ FIRST (E) = FIRST(TE′) = FIRST(T)∴ FIRST (E) = {FIRST(T)} (1)E → +TE′|εApplying Rule (3) of FIRSTComparing E′ → +TE′with X → aα∴ FIRST(E′) = {+}Apply Rule (2) on E′ → εFIRST (E′) = {ε}∴ FIRST(E′) = {+, ε} (2)T→FT′Apply rule (4b) of FIRSTSince, FIRST(F) does not derive ε∴ FIRST(T) = FIRST(FT′) = FIRST(F)∴ FIRST(T) = {FIRST(F)} (3)T′→*FT′|εComparing with rule (2) & (3) of FIRST, we get∴ FIRST(T′) = {ε, ∗} (4)F→(E)|idComparing with rule (3) of FIRST∴ FIRST(F) = {(, ... Read More

41K+ Views
Problem − Consider the following grammar − E → TE′ E′ → +TE′|ε T′ → FT′ T′ → FT′|ε F → (E)|id Solution − Step1− Elimination of Left Recursion & perform Left Factoring As there is no left recursion in Grammar so, we will proceed as it is. Also, there is no need for Left Factoring. Step2− Computation of FIRST FIRST(E) = FIRST(T) = FIRST(F) = {(, id} FIRST (E′) = {+, ε} FIRST (T′) = {*, ε} Step3− Computation of FOLLOW FOLLOW (E) = FOLLOW(E′) = {), $} FOLLOW (T) = FOLLOW(T′) = {+, ), $} FOLLOW (F) = ... Read More

1K+ Views
SolutionComputation of FIRSTA → b B∴ FIRST(A) = {b}B → ε∴ FIRST(B) = {ε}S → A a AApplying Rule (4) of FIRSTi.e., Comparing S → A a A with X → Y1Y2Y3∴ FIRST (S) = FIRST (A a A) = FIRST (A) = {b}∴ FIRST(S) = {b}S → B b B∵ FIRST (B)contains ε or B derives ε ∴ Applying Rule (4c)∴ FIRST (S) = FIRST (B to B)∴ FIRST (S) = FIRST (B) − {ε} ∪ FIRST(bB)∴ FIRST (S) = FIRST (B) − {ε} ∪ {b} = {ε} − {ε} ∪ {b} = {b}∴ FIRST (A) = {b}FIRST (B) ... Read More

62K+ Views
FIRST and FOLLOW are two functions associated with grammar that help us fill in the entries of an M-table.FIRST ()− It is a function that gives the set of terminals that begin the strings derived from the production rule.A symbol c is in FIRST (α) if and only if α ⇒ cβ for some sequence β of grammar symbols.A terminal symbol a is in FOLLOW (N) if and only if there is a derivation from the start symbol S of the grammar such that S ⇒ αNαβ, where α and β are a (possible empty) sequence of grammar symbols. In ... Read More

20K+ Views
Predictive Parser is also another method that implements the technique of Top- Down parsing without Backtracking. A predictive parser is an effective technique of executing recursive-descent parsing by managing the stack of activation records, particularly.Predictive Parsers has the following components −Input Buffer − The input buffer includes the string to be parsed followed by an end marker $ to denote the end of the string.Here a, +, b are terminal symbols.Stack − It contains a combination of grammar symbols with $ on the bottom of the stack. At the start of Parsing, the stack contains the start symbol of Grammar ... Read More

40K+ Views
Recursive Descent Parser uses the technique of Top-Down Parsing without backtracking. It can be defined as a Parser that uses the various recursive procedure to process the input string with no backtracking. It can be simply performed using a Recursive language. The first symbol of the string of R.H.S of production will uniquely determine the correct alternative to choose.The major approach of recursive-descent parsing is to relate each non-terminal with a procedure. The objective of each procedure is to read a sequence of input characters that can be produced by the corresponding non-terminal, and return a pointer to the root ... Read More

2K+ Views
There are two types of Top-Down Parsing without Backtracking, which are as follows −Recursive Descent ParserPredictive ParserRecursive Descent ParserA top-down parser that implements a set of recursive procedures to process the input without backtracking is known as recursive-descent parser, and parsing is known as recursive-descent parsing. The recursive procedures can be accessible to write and adequately effective if written in a language that performs the procedure call effectively.There is a procedure for each non-terminal in the grammar. It can consider a global variable lookahead, influencing the current input token and a procedure match (Expected Token) is the action of recognizing ... Read More

2K+ Views
A Grammar G (V, T, P, S) is left recursive if it has a production in the form.A → A α |β.The above Grammar is left recursive because the left of production is occurring at a first position on the right side of production. It can eliminate left recursion by replacing a pair of production withA → βA′A → αA′|ϵThe general form for left recursion isA → Aα1|Aα2| … . |Aαm|β1|β2| … . . βncan be replaced byA → β1A′|β2A′| … . . | … . . |βnA′A → α1A′|α2A′| … . . |αmA′|εIn the following grammar, it does not ... Read More

9K+ Views
In Top-Down Parsing with Backtracking, Parser will attempt multiple rules or production to identify the match for input string by backtracking at every step of derivation. So, if the applied production does not give the input string as needed, or it does not match with the needed string, then it can undo that shift.Example1 − Consider the GrammarS → a A dA → b c | bMake parse tree for the string a bd. Also, show parse Tree when Backtracking is required when the wrong alternative is chosen.SolutionThe derivation for the string abd will be −S ⇒ a A d ⇒ ... Read More