LR पार्सर क्या है – What is LR Parser in Hindi?

हेल्लो दोस्तों! आज मैं आपको What is LR Parser in Hindi (LR पार्सर क्या है?) के बारें में बताऊंगा, तथा इसके example को भी देखेंगे, यह compiler design का एक महत्वपूर्ण टॉपिक है तो चलिए शुरू करते हैं:-

LR Parser in HindiLR पार्सर क्या है

LR parsers जो है वह bottom-up parser का एक प्रकार है. यह non-recursive, और shift reduce होता है.

यह context free grammar का प्रयोग करता है जिसके कारण यह सबसे प्रभावी syntax analysis तकनीक बन जाती है. और इसका प्रयोग grammars की large class को parse करने के लिए किया जाता है.

LR Parser को LR (k) parsers के नाम से भी जाना जाता है; जहाँ L का मतलब input के left-to-right scanning से है. और R का मतलब reverse में construction के right-most derivation से है.

k जो है वह decision लेने के लिए lookahead symbols की संख्या को दर्शाता है।

LR Parser को construct करने के लिए सबसे ज्यादा तीन algorithms का प्रयोग किया जाता है, जो कि निम्नलिखित हैं:-

1:- SLR(1) – Simple LR Parser:

  • यह grammar की छोटी class पर work करता है.
  • इसमें states की कम संख्या होती है, इसलिए छोटी table होती है.
  • इसमें सरल और तेज construction होता है.

2:- LR(1) – LR Parser:

  • यह LR (1) grammar के पूर्ण सेट पर work करता है।
  • यह बहुत बड़ी table तथा states की बहुत बड़ी संख्या को जनरेट करता है.
  • इसमें construction वहुत slow (धीमा) होता है.

3:- LALR(1) – Look-Ahead LR Parser:

  • यह मध्यम size के grammar पर कार्य करता है.
  • इसमें states की संख्या SLR(1) की तरह ही समान होता है.

Advantage of LR Parser in Hindi – इसके फायदे

इसके फायदे निम्नलिखित हैं:-

  1. LR parsers जो है वह context free grammar की बहुत बड़ी class को handle कर सकता है.
  2. यह विधि बहुत ही जल्दी syntax errors को detect कर सकती है, जैसे ही वह घटित होते हैं.
  3. LR Grammars जो है वह ज्यादा languages को describe कर सकते हैं.

disadvantage of LR Parser in Hindi – इसके नुक्सान

इसकी हानियाँ निम्नलिखित हैं:-

  1. हाथ के द्वारा LR parser को construct करने के लिए बहुत ज्यादा काम करना पड़ता है. इसे automated parser generator की आवश्यकता होती है.
  2. यदि grammar में ambiguity (अस्पष्टता) होती है तो input के left-to-right स्कैन में parse करना बहुत मुश्किल हो जाता है।

इसे पढ़ें:- mealy और moore machine क्या है?

difference between LL and LR parsing in Hindi – इनके मध्य अंतर

LL parsingLR parsing
यह leftmost derivation को follow करता है.यह rightmost derivation के derivation को follow करता है.
stack पर root nonterminal के साथ शुरू होता है।stack पर root nonterminal के साथ ख़त्म होता है।
यह तब खत्म होता है जब स्टैक empty होता है.यह empty stack के साथ शुरू होता है.
LL parser का पयोग करके parser tree को top down manner में construct किया जा सकता है.parser tree को bottom up manner में construct किया जा सकता है.
इसमें parse tree का preorder traversal किया जाता है.parse tree का post-order traversal किया जाता है.
stack से pop out हो जाने के बाद terminal को read किया जाता है.stack में push होने से पहले terminal को read किया जाता है.
यह backtracking या dynamic programming का प्रयोग कर सकता है।यह dynamic programming का use करता है.
LL को write करना आसान है.LR को write करना आसान नहीं है.
उदाहरण:- LL(0), LL(1)उदाहरण:- LR(0), SLR(1), LALR(1), CLR(1).
lr parser in hindi
इमेज सोर्स

निवेदन:- अगर आपके लिए यह post useful रही हो तो इसे अपने friends के साथ अवश्य share कीजिये और हाँ आपके जो भी compiler design या अन्य subjects से related कोई सवाल हो तो comment के द्वारा बताइये. धन्यवाद.

8 thoughts on “LR पार्सर क्या है – What is LR Parser in Hindi?”

Leave a Comment