मैं वर्तमान में "कंपाइलर सिद्धांत तकनीकों और औजारों" (जिसे "ड्रैगन बुक" भी कहा जाता है) में वर्णित एलएएलआर पार्सर जनरेटर को लागू करने की कोशिश कर रहा हूं।एलएएलआर पार्सर जेनरेटर कार्यान्वयन समस्या
बहुत पहले से ही काम करता है। पार्सर जनरेटर वर्तमान में पूर्ण गोटो-ग्राफ उत्पन्न करने में सक्षम है।
Example Grammar:
S' --> S
S --> C C
C --> c C
C --> d
Nonterminals: S', S, C
Terminals: c, d
Start: S'
गोटो-ग्राफ:
I[0]---------------+ I[1]-------------+
| S' --> . S , $ |--S-->| S' --> S . , $ |
| S --> . C C , $ | +----------------+
| C --> . c C , c |
| C --> . c C , d | I[2]--------------+
| C --> . d , c | | S --> C . C , $ | I[3]--------------+
| C --> . d , d |--C-->| C --> . c C , $ |--C-->| S --> C C . , $ |
+------------------+ | C --> . d , $ | +-----------------+
| | +-----------------+
| | +--c--+ | |
| | | | c |
| | | v v |
| | I[4]--------------+ |
| c | C --> c . C , c | |
| | | C --> c . C , d | |
| | | C --> c . C , $ | d
| | | C --> . c C , c | |
| +---->| C --> . c C , d | |
| | C --> . c C , $ | |
d | C --> . d , c |--+ |
| +-----| C --> . d , d | | |
| | | C --> . d , $ | | |
| | +-----------------+ | |
| C | |
| | I[6]--------------+ | |
| | | C --> c C . , c | d |
| +---->| C --> c C . , d | | |
| | C --> c C . , $ | | |
| +-----------------+ | |
| | |
| I[5]------------+ | |
| | C --> d . , c |<---+ |
+------->| C --> d . , d | |
| C --> d . , $ |<-----+
+---------------+
मैं एल्गोरिथ्म को लागू करने के कार्यों की मेज उत्पन्न करने के लिए साथ trubbles है!
state | action
| c | d | $
------------------------
0 | s4 | s5 |
------------------------
1 | | | acc
------------------------
2 | s4 | s5 |
------------------------
3 | | | r?
------------------------
4 | s4 | s5 |
------------------------
5 | r? | r? | r?
------------------------
6 | r? | r? | r?
sx ... एक्स
rx राज्य में बदलाव ... एक्स
आर राज्य को कम: मेरे एल्गोरिथ्म ने निम्न उत्पादन की गणना करता है? इसका मतलब है कि मुझे नहीं पता कि कैसे राज्य (?) प्राप्त करने के लिए जिस पर पार्सर को कम करना चाहिए। क्या किसी को पाने के लिए एल्गोरिदम पता है? ऊपर गोटो ग्राफ का उपयोग कर?
यदि कुछ भी स्पष्ट रूप से पर्याप्त वर्णन नहीं किया गया है, तो कृपया पूछें और मैं इसे बेहतर समझाऊंगा! आपकी मदद के लिए धन्यवाद!
बहुत उपयोगी धन्यवाद !!! – raisyn