parsing - पार्सिंग, मैं इसके बारे में कहां सीख सकता हूं?




lex (8)

मुझे एक भाषा में अनुवाद करने की नौकरी मिल गई है। स्रोत बहुत सरल है (जटिल) regex के साथ लाइन दृष्टिकोण से एक सरल रेखा के लिए Lexical विश्लेषण और पार्सर के बारे में अधिक जानने के लिए मैं कहाँ जा सकता हूं?


Lexing / Parsing + Typecheck + कोड पीढ़ी एक महान सीएस अभ्यास है मैं इसे एक ठोस आधार चाहते किसी को भी सिफारिश करेंगे, इसलिए मैं ड्रैगन बुक के लिए सभी कर रहा हूँ



यदि आप जावा आधारित टूल पसंद करते हैं, तो जावा कम्पाइलर कम्पाइलर, जावा सीसी, एक अच्छा पार्सर / स्कैनर है। यह कॉन्फ़िग फ़ाइल चालित है, और जावा कोड उत्पन्न करेगा जिसे आप अपने प्रोग्राम में शामिल कर सकते हैं। मैंने इसे कुछ सालों का इस्तेमाल नहीं किया है, इसलिए मुझे यकीन नहीं है कि वर्तमान संस्करण कैसे है। आप यहां अधिक जानकारी प्राप्त कर सकते हैं: https://javacc.dev.java.net/


यदि आप विषय के बारे में "भावनात्मक" प्राप्त करना चाहते हैं, तो " ड्रैगन बुक " की एक प्रति चुनें। यह आम तौर पर कंपाइलर डिजाइन पाठ्यक्रम में पाठ होता है। यह निश्चित रूप से आपकी जरूरत को पूरा करेगा "वाक्पटु विश्लेषण और पार्सर" के साथ-साथ अन्य मज़ेदार सामानों का एक गुच्छा!

आईएमएच (आईंएम) ओ, अपने आप को एक हाथ और / या पैर बचाने के लिए और एक पुराने संस्करण खरीद - यह आपकी जानकारी इच्छाओं को भर देगा


(काफी) कुछ कंपाइलर कक्षाएं लेने के बाद, मैंने द ड्रैगन बुक और सी एंड टी दोनों का उपयोग किया है मुझे लगता है कि सी एंड टी कंपाइलर निर्माण को पचाने योग्य बनाने का एक बहुत अच्छा काम करता है। ड्रैगन बुक से कुछ भी नहीं लेना, लेकिन मुझे लगता है कि सी एंड टी एक बहुत अधिक व्यावहारिक पुस्तक है।

इसके अलावा, अगर आप जावा में लिखना चाहते हैं, तो मैं अपने लेक्सिंग और पार्सिंग की जरूरतों के लिए जेएफएक्स और बीएवाईसी / जे का उपयोग करने की सलाह देता हूं।


बहुत सारे लोग किताबों की सिफारिश करते हैं कई लोगों के लिए यह एक संरचित वातावरण में बहुत अधिक उपयोगी है ताकि असाइनमेंट और नियत तिथियां हों और आगे बढ़ें। यहां तक ​​कि अगर नहीं, सामग्री एक अलग तरीके से प्रस्तुत होने से बहुत मदद कर सकता है।

(ए) क्या आपने एक सभ्य सीएस पाठ्यक्रम के साथ स्कूल जाने पर विचार किया है?
(बी) बहुत सारे ऑनलाइन व्याख्यान हैं, जैसे एमआईटी के ओपन कोर्सवेयर उनके ईई / सीएस अनुभाग में कई पाठ्यक्रम हैं जो पार्सिंग पर छूते हैं, हालांकि मुझे पार्सिंग पर कोई भी नहीं देख सकता। यह आम तौर पर पहले सिद्धांत पाठ्यक्रमों में से एक के रूप में पेश किया जाता है क्योंकि भाषा वर्गीकरण और ऑटोमेटा सीएस सिद्धांत के बहुत अधिक है।


एएनएलटीआर की कोशिश करो:

एएनटीएलआर, भाषा मान्यता के लिए एक और उपकरण, एक भाषा उपकरण है जो विविध लक्ष्यीकरण भाषाओं में कार्य करने वाले व्याकरण संबंधी विवरणों से पहचानकर्ता, दुभाषियों, संकलक और अनुवादकों के निर्माण के लिए ढांचा प्रदान करता है।

इसके लिए एक पुस्तक भी है


पार्सिंग तकनीकों - एक व्यावहारिक गाइड डिक ग्रुइन और सेरियल जे एच जैकब्स

यह पुस्तक (पीडीएफ के रूप में स्वतंत्र रूप से उपलब्ध है) विभिन्न पार्सिंग तकनीकों / एल्गोरिदम के व्यापक अवलोकन प्रदान करती है। यदि आप वास्तव में विभिन्न पार्सिंग एल्गोरिदम को समझना चाहते हैं, तो यह आईएमओ ड्रैगन बुक की तुलना में बेहतर संदर्भ है (जैसा कि पार्सिंग तकनीक पूरी तरह से पार्सिंग पर केंद्रित है, जबकि ड्रैगन बुक केवल एक के रूप में पार्स करता है - हालांकि महत्वपूर्ण - कंपाइलर निर्माण प्रक्रिया का हिस्सा) ।







lex