2009-08-23 15 views
20

मैं एक लिस्प बोली में मुख्य रूप से एक सीखने के अभ्यास के रूप में एक लिस्प दुभाषिया को लागू करना चाहता हूं। एक चीज जिसे मैंने फेंक दिया है, इस क्षेत्र में कितने विकल्प हैं। मुख्य रूप से, मैं कुछ लिस्पस (जैसे योजना या सामान्य लिस्प) के बारे में कुछ लिस्पस के बारे में सीखने में थोड़ा अधिक दिलचस्पी लेता हूं। मैं क्लोजर का उपयोग इस तथ्य के लिए करने के लिए नहीं करना चाहता कि मैंने पहले ही इसका इस्तेमाल किया है। :-)पार्सिंग में लिस्प बेहतर क्या है?

तो क्या स्वादों में से एक दूसरों को पार्सिंग में बेहतर है? और क्या आपको लगता है कि सामान्य लिस्प (या इसके विपरीत) में योजना लागू करना एक अच्छा विचार है? या क्या मुझे फेंकने के लिए दोनों के बीच पर्याप्त मतभेद होंगे?

और यदि इससे कोई फर्क पड़ता है, तो मुझे क्रॉस-प्लेटफॉर्म कुछ चाहिए। मेरे पास एक विंडोज पीसी, एक मैक और एक लिनक्स बॉक्स है, और मैं इसे किसी भी पर लिखना समाप्त कर सकता हूं।

उत्तर

20

उस के बारे में कुछ किताबें हैं:

के बारे में पुराने क्लासिक को लागू करने बताते हैं

उपर्युक्त सभी पुस्तकें ऊंची हैं ly की सिफारिश की, हालांकि लिस्प की एनाटॉमी पुरानी है, पाने में मुश्किल है और पढ़ने में मुश्किल है।

दोनों योजना और सामान्य लिस्प आपके कार्य के लिए ठीक हैं।

सामान्य लिस्प लागू करना एक बड़ा काम है, क्योंकि भाषा बड़ी है। आम तौर पर आम लिस्प में आम लिस्प बेहतर होता है, क्योंकि आम लिस्प पुस्तकालय होते हैं जिनका उपयोग नए आम लिस्प कार्यान्वयन के लिए किया जा सकता है। ;-)

+0

मैंने लिप में लिस्प दुभाषियों को लिखने पर पीएआईपी और एसआईसीपी के अध्याय पढ़े हैं, और मुझे लगता है कि पूर्व सामान्य लिस्प के लिए नए व्यक्ति के लिए बेहतर है, हालांकि दोनों की अत्यधिक अनुशंसा की जाती है। – justinhj

+3

यह उल्लेखनीय है कि पीएआईपी की योजना दुभाषिया और संकलक दोनों सामान्य लिस्प में लिखे गए हैं, जो प्रश्न के दूसरे पहलू का जवाब देते हैं। – Pillsy

+4

क्या कोई और यहां विडंबना देखता है, या यह सिर्फ मुझे है? =) –

4

PLT Scheme प्रोग्रामिंग भाषाओं, विशेष रूप से लिस्पी भाषाओं के प्रयोग के लिए एक उत्कृष्ट मंच है। पीएलटी में एक एक्स्टेंसिबल पार्सर होता है (आमतौर पर योजना में एक पाठक कहा जाता है) जो निर्मित वाक्यविन्यास में हेरफेर करने के लिए पाठक मैक्रोज़ प्रदान करता है; या आप पाठक को पूरी तरह से अपने आप से बदल सकते हैं। यदि आप पारंपरिक लेक्स/वाईएसी स्टाइल पार्सर्स और लेक्सर्स का उपयोग करना चाहते हैं, तो पीएलटी एक पार्सर-टूल्स मॉड्यूल के साथ आता है जो उन्हें भी प्रदान करता है। बोनस के रूप में, इसमें व्यापक दस्तावेज और तीसरे पक्ष के पैकेज के लिए एक भंडार है (दो चीजें जो कई योजनाओं से गायब हैं)।

आर्क (arclanguage.org) का संदर्भ कार्यान्वयन एक साधारण सरल और पठनीय योजना बनाने के लिए एक भाषा बनाने का उदाहरण है। यह पीएलटी के पाठक का अधिकतर उपयोग करता है, जिसमें कुछ पाठक मैक्रोज़ स्कीम सिंटैक्स के बिट्स को बदलने के लिए आर्क से भिन्न होते हैं। यदि आप एक गैर-लिस्प भाषा को कार्यान्वित करना चाहते हैं तो पीएलटी के पैकेज रिपोजिटरी (planet.plt-scheme.org) से एक जावास्क्रिप्ट कार्यान्वयन भी उपलब्ध है।

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