मैं एक "tokenizer", "parser" और "lexer" क्या हैं और वे एक-दूसरे से कैसे संबंधित हैं (जैसे, क्या parser एक tokenizer या इसके विपरीत का उपयोग करता है) की स्पष्ट परिभाषा के लिए देख रहा हूँ? मुझे डाटा डिक्लेरेशन और परिभाषाएँ निकालने के लिए c / h स्रोत फ़ाइलों के माध्यम से एक प्रोग्राम बनाना होगा।
मैं उदाहरणों की तलाश में हूं और कुछ जानकारी पा सकता हूं, लेकिन मैं वास्तव में व्याकरण नियमों, पार्स पेड़ों और अमूर्त सिंटैक्स ट्री जैसी अंतर्निहित अवधारणाओं को समझने के लिए संघर्ष कर रहा हूं और वे एक दूसरे से कैसे संबंधित हैं। आखिरकार इन अवधारणाओं को एक वास्तविक कार्यक्रम में संग्रहीत करने की आवश्यकता होती है, लेकिन 1) वे क्या दिखते हैं, 2) आम कार्यान्वयन हैं।
मैं इन विषयों और कार्यक्रमों जैसे कि लेक्स और याक पर विकिपीडिया को देख रहा हूं, लेकिन एक कंपाइलर क्लास (ईई मेजर) के माध्यम से कभी नहीं गया था, मुझे पूरी तरह से समझना मुश्किल हो रहा है कि क्या चल रहा है।