मैं यहां विकिपीडिया पर gcc कंपाइलर सुइट के बारे में शोध कर रहा था , जब यह आया:
जीसीसी ने बाइसन के साथ उत्पन्न एलएएलआर पार्सर का उपयोग करना शुरू कर दिया, लेकिन धीरे-धीरे हाथ से लिखे गए पुनरावर्ती-वंशीय स्विचर्स पर स्विच किया; सी ++ के लिए 2004 में, और 2006 में सी और ऑब्जेक्टिव-सी के लिए। वर्तमान में सभी फ्रंट एंड्स में हाथ से लिखे हुए रिकर्सिव-डिसेंटर्स का उपयोग किया जाता है।
तो उस अंतिम वाक्य से, (और जितना मैं विकिपीडिया पर भरोसा करता हूं) मैं निश्चित रूप से कह सकता हूं कि "सी (जीसीसी), सी ++ (जी ++), ऑब्जेक्टिव-सी, ऑब्जेक्टिव-सी ++, फोरट्रान (गैफरान), जावा (जीसीजे), Ada (GNAT), गो (gccgo), पास्कल (gpc), ... मर्करी, मोडुला -2, मोडुला -3, PL / I, D (gdc), और VHDL (ghdl) "सभी फ्रंट-एंड्स हैं कि नहीं अब एक पार्सर जनरेटर का उपयोग करें। यही है, वे सभी हाथ से लिखे गए पार्सर का उपयोग करते हैं।
मेरा सवाल यह है कि क्या यह अभ्यास सर्वव्यापी है? विशेष रूप से, मैं [Python, Swift, Ruby, Java, Scala, ML, Haskell] में x के लिए "क्या मानक / आधिकारिक कार्यान्वयन के लिए हाथ से लिखे गए पार्सर है" के सटीक उत्तर की तलाश है। (वास्तव में, किसी भी अन्य भाषाओं की जानकारी यहाँ भी स्वागत है।) मुझे यकीन है कि मैं इसे बहुत खुदाई के बाद अपने दम पर पा सकता हूं। लेकिन मुझे यकीन है कि यह समुदाय द्वारा आसानी से जवाबदेह है। धन्यवाद!