6

संभव डुप्लिकेट:
Learning to write a compilerकहाँ अगर मैं समझने के लिए संकलनकर्ता और प्रोग्रामिंग भाषाओं बना रहे हैं चाहते शुरू करने के लिए

मैं जानता हूँ कि यह एक व्यापक सवाल पूछने के लिए है, लेकिन मैं जहां सकता है सीखना शुरू करें कि कंपाइलर्स वास्तव में कैसे काम करते हैं, प्रोग्रामिंग भाषाएं कैसे बनाई जाती हैं, मेरा मतलब यह नहीं है कि आप जावा या रूबी का उपयोग कैसे करते हैं लेकिन लोग वास्तव में उन्हें कैसे बना रहे हैं। मैं इन भाषाओं को किसी भी तरीके से दोहराने की कोशिश नहीं करूंगा लेकिन मैं इसके पीछे अवधारणाओं और सिद्धांत को समझना चाहता हूं। तो मुझे जो कुछ चाहिए, उस पर कुछ निर्देश हैं जो मुझे खोजना चाहिए, या यहां तक ​​कि बेहतर और अधिक सराहना पुस्तक की सिफारिशें हैं।

सम्मान,

जोनाथन नैश।

उत्तर

3

आप Dragon Book पर एक नज़र ले सकता है:

+2

ध्यान दें कि ड्रैगन बुक एक प्रारंभिक पाठ नहीं है, लेकिन एक बहुत अच्छी संदर्भ पुस्तक है। टिप्पणियों के लिए http://www.billthelizard.com/2008/12/books-programmers-dont-really-read.html देखें। –

+0

धन्यवाद लेकिन लिंक काम नहीं करता है। –

+0

@ जॉननाथन: स्टैक ओवरफ्लो कुछ कारणों से भ्रष्ट संबद्ध लिंक में मेरे अमेज़ॅन लिंक को परिवर्तित कर रहा था। मैंने संपादित किया है और अब यह ठीक से काम कर रहा है। – LukeH

3

द्वारा आप जैक Crenshaw एक दिलचस्प परिचय द्वारा द्वारा Lets Build a Compiler मिल सकती है।

वास्तविक कार्यक्षमता के निर्माण पर बहुत सरल और ध्यान केंद्रित किया गया।

+0

मैं इसे दूसरा करता हूं। ड्रैगन पुस्तक निश्चित पाठ है लेकिन निश्चित रूप से शुरू करने की जगह नहीं है। चलिए एक कंपाइलर बनाएं जब मुझे एक कंपाइलर लिखना पड़ा तो मुझे बड़ी समय में मदद मिली। – Jeremy

+0

+1 अगर आप वास्तव में एक बनाना चाहते हैं तो शुरू करने के लिए महान जगह – tylermac

1

मैंने Language Implementation Patterns का बहुत आनंद लिया है और एक गुच्छा सीखा है। काश मैं कुछ साल पहले एक डीएसएल लागू करने की कोशिश करने से पहले इसे पढ़ा था।

2
  • Compiler Constrution निक्लौस विर्थ से लिंक मैं प्रदान की (हाँ, कानूनी रूप से) से मुक्त करने के लिए काफी अच्छा है और उपलब्ध है। यह थोड़ा पुराना है और उदाहरण के लिए ओबेरॉन का उपयोग करता है लेकिन इसका पालन करना आसान है।

  • Create Your Own Programming Language मार्क-एंड्रे Cournoyer द्वारा 40 अमरीकी डालर के लिए ऑनलाइन उपलब्ध है और इसमें एक ईबुक (अभ्यास और समाधान सहित), दो उदाहरण भाषाओं (रूबी में से एक और जावा में एक) के लिए स्रोत कोड और विस्तार करने पर एक स्क्रीनकास्ट शामिल है जेवीएम आधारित भाषा। यह शायद सबसे नवीन नौसिखिया परिचय है जिसे आप विषय पर पा सकते हैं और बाद में आपको शामिल चरणों (टोकनिंग, पार्सिंग, लेक्सिंग इत्यादि) के बारे में बहुत अच्छा विचार होना चाहिए और प्रदान किए गए लिंक के साथ अपना शोध जारी रख सकते हैं। यह थोड़ा महंगा है, लेकिन आईएमएचओ यह इसके लायक है।

  • प्राथमिक रूप से एक शिक्षण संसाधन नहीं है, CoffeeScript वेबसाइट में "एनोटेटेड सोर्स" नामक एक अनुभाग है, जो प्रोग्रामिंग भाषा कैसे काम करता है यह देखने में वास्तव में सहायक होता है। पिछले बुलेट प्वाइंट बीटीडब्ल्यू में उल्लिखित पुस्तक को पढ़ने के बाद कॉफीस्क्रिप्ट के लेखक ने इस पर काम करना शुरू कर दिया।

संबंधित मुद्दे

 संबंधित मुद्दे