प्रोलॉग और लिस्प के बीच का अंतर

Anonim

प्रोल बनाम लिस्प

प्रोलॉग और लिस्प के साथ बनते हैं, आज दो सबसे लोकप्रिय ऐ (कृत्रिम बुद्धि) कम्प्यूटर प्रोग्रामिंग भाषा हैं। वे दो अलग-अलग प्रोग्रामिंग मानदंडों के साथ निर्मित होते हैं प्रोलोल एक घोषणात्मक भाषा है, जबकि लिस्प एक कार्यात्मक भाषा है। दोनों का उपयोग विभिन्न एआई समस्याओं के लिए किया जाता है लेकिन प्रोलोल तर्क और तर्क संबंधी समस्याओं के लिए सबसे अधिक उपयोग किया जाता है, जबकि लिस्प का इस्तेमाल तेजी से प्रोटोटाइप की जरूरतों के लिए किया जाता है।

प्रोलॉग

प्रोलॉग एक ए प्रोग्रामिंग भाषा है यह तर्क प्रोग्रामिंग भाषाओं के परिवार से संबंधित है। प्रोलोल एक घोषणात्मक भाषा है, जिसमें संबंधों (जो कार्यक्रम तर्क का प्रतिनिधित्व करते हैं) के प्रश्नों को चलाने के द्वारा कम्प्यूटेशन किए जाते हैं, जिन्हें नियम और तथ्य के रूप में परिभाषित किया जाता है। 1 9 70 में विकसित, prolog सबसे पुरानी तर्क प्रोग्रामिंग भाषाओं में से एक है और आज की सबसे लोकप्रिय ए प्रोग्रामिंग भाषाओं में से एक है (लिस्प के साथ)। यह एक निशुल्क भाषा है, लेकिन कई वाणिज्यिक रूप उपलब्ध हैं। यह पहली बार प्राकृतिक भाषा प्रसंस्करण के लिए इस्तेमाल किया गया था, लेकिन अब इसका उपयोग विशेषज्ञ प्रणालियों, स्वचालित उत्तर प्रणालियों, खेल और उन्नत नियंत्रण प्रणालियों जैसे विभिन्न कार्यों के लिए किया जाता है। प्रोलोल में केवल एक डेटा प्रकार है जिसे शब्द कहा जाता है। एक शब्द एक परमाणु, संख्या, चर या एक मिश्रित शब्द हो सकता है। नंबर फ्लोट या पूर्णांक हो सकता है Prolog मदों के संग्रह के रूप में सूचियों और स्ट्रिंग का समर्थन करता है। Prolog खंडों का उपयोग कर रिश्तों को परिभाषित करता है। क्लॉज़ या तो नियम या तथ्यों हो सकते हैं Prolog इसकी पुनरावर्ती predicates पूरी तरह से चलना अनुमति देता है

-2 ->

लिस्प

लिस्प कंप्यूटर प्रोग्रामिंग भाषाओं का एक परिवार है। और सामान्य प्रयोजन प्रोग्रामिंग के लिए उपयोग की जाने वाली सबसे प्रसिद्ध लिस्प बोलीयां आज साधारण लिस्प और योजना हैं। नाम लिस्प "लिस्ट प्रसंस्करण" से आता है और जैसा कि यह संकेत करता है, लिस्प का प्रमुख डेटा संरचना लिंक की गई सूची है। वास्तव में पूरे स्रोत को सूचियों (उपसर्ग संकेतन का उपयोग करके), या अधिक सही ढंग से कोष्ठक सूचियों (एस-अभिव्यक्ति कहा जाता है) का उपयोग करके लिखा जाता है। उदाहरण के लिए, एक फ़ंक्शन कॉल (एफ ए 1 ए 2 ए 3) के रूप में लिखा गया है, जिसका अर्थ है कि फ़ंक्शन फ़ंक्शन के लिए इनपुट 1 के रूप में ए 1, ए 2 और ए 3 का इस्तेमाल किया जाता है। इसलिए इसे अभिव्यक्ति उन्मुख भाषा कहा जाता है, जहां सभी डेटा और कोड अभिव्यक्ति के रूप में लिखे जाते हैं (लिस्प में अभिव्यक्ति और कथन के बीच कोई अंतर नहीं है)। यह अच्छी सुविधा लिस्प के लिए बहुत खास है, जहां यह उपयोगी मैक्रोज़ लिखकर समस्या की भाषा को बढ़ाने के लिए इस्तेमाल किया जा सकता है। हालांकि पूंछ-पुनरावृत्ति प्रोग्रामर्स द्वारा छोरों को व्यक्त करने के लिए उपयोग किया जाता है, हालांकि सभी बार देखा जाने वाले लिस्प बोलियों में लूप जैसे नियंत्रण संरचनाएं शामिल होती हैं। इसके अतिरिक्त, कॉमन लिस्प और स्कीम में नक्शाकार और मैप हैं, जो फ़ंक्शन के उदाहरण हैं, जो अपने सभी तत्वों के क्रम में समारोह को लागू करके पाशन कार्यक्षमता प्रदान करते हैं और फिर परिणामों को एक सूची में एकत्र करते हैं।

प्रोलॉग और लिस्प में क्या अंतर है?

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