सियाओ (प्रोग्रामिंग भाषा): Difference between revisions
No edit summary |
|||
(7 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{Infobox programming language | {{Infobox programming language | ||
| name = | | name = सियाओ | ||
| logo = Logo_for_Ciao_programming_language.png | | logo = Logo_for_Ciao_programming_language.png | ||
| paradigm = [[ | | paradigm = [[लॉजिक प्रोग्रामिंग|लॉजिक]], [[फंक्शनल प्रोग्रामिंग|फंक्शनल]], [[मॉड्यूलर प्रोग्रामिंग|मॉड्यूलर]], [[ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग|ऑब्जेक्ट-ओरिएंटेड]] | ||
| year = {{ | | year = {{प्रारंभ तिथि और आयु|1984}} | ||
| dialects = | | dialects = | ||
| influenced_by = [[Prolog]] | | influenced_by = [[Prolog]] | ||
| influenced = | | influenced = | ||
| operating_system = [[ | | operating_system = [[क्रॉस-प्लेटफ़ॉर्म]] ([[यूनिक्स]], [[मैक ओएस एक्स]], [[माइक्रोसॉफ्ट विंडोज़|विंडोज़]]) | ||
| license = [[ | | license = [[जीपीएल]], [[एलजीपीएल]] | ||
| website = {{URL|www.ciao-lang.org}} | | website = {{URL|www.ciao-lang.org}} | ||
}} | }} | ||
सियाओ एक सामान्य-उद्देश्य वाली [[प्रोग्रामिंग भाषा]] है जो [[तर्क प्रोग्रामिंग|तर्क (लॉजिक)]], विवशता (कन्सट्रैन्ट), [[कार्यात्मक प्रोग्रामिंग|कार्यात्मक]], [[उच्च-क्रम प्रोग्रामिंग|उच्च-क्रम]] और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग शैलियों का समर्थन करती है। इसके मुख्य [[डिजाइन उद्देश्य]] उच्च [[अभिव्यंजक शक्ति (कंप्यूटर विज्ञान)|अभिव्यंजक शक्ति]], विस्तारशीलता, सुरक्षा, विश्वसनीयता और कुशल निष्पादन हैं।<ref>{{Cite web|url=https://ciao-lang.org/|title=सियाओ सिस्टम|website=ciao-lang.org|access-date=2017-08-12}}</ref> | |||
== भाषा विशेषताएँ == | == भाषा विशेषताएँ == | ||
सियाओ एक पूर्ण प्रोलॉग सिस्टम (आईएसओ-प्रोलॉग का समर्थन), प्रोलॉग के घोषणात्मक उपसमुच्चय और एक्सटेंशन, कार्यात्मक प्रोग्रामिंग (सुस्त मूल्यांकन (लेजी इवैल्यूएशन) सहित), उच्च-क्रम (विधेय सार के साथ), बाधा प्रोग्रामिंग, और ऑब्जेक्ट्स, साथ ही फीचर शर्तों (रिकॉर्ड) प्रदान करता है। ), दृढ़ता, कई नियंत्रण नियम (चौड़ाई-पहली खोज, पुनरावृत्त गहराई, ...), [[समवर्ती (कंप्यूटर विज्ञान)|समवर्ती]] (थ्रेड्स/इंजन), वितरित निष्पादन (एजेंट), और समानांतर निष्पादन। पुस्तकालय डब्ल्यूडब्ल्यूडब्ल्यू प्रोग्रामिंग, सॉकेट्स, बाहरी इंटरफेस ((सी, जावा, टीसीएलटीके, रिलेशनल डेटाबेस, आदि), आदि का समर्थन करते हैं। | |||
सियाओ एक एक्स्टेंसिबल मॉड्यूलर डिज़ाइन के साथ कर्नेल पर बनाया गया है जो भाषा को प्रतिबंधित और विस्तारित करने की अनुमति देता है - इसे भाषा-निर्माण भाषा के रूप में देखा जा सकता है। इन प्रतिबंधों और एक्सटेंशन को प्रत्येक प्रोग्राम मॉड्यूल पर अलग से सक्रिय किया जा सकता है ताकि अलग-अलग मॉड्यूल के लिए एक ही एप्लिकेशन में कई एक्सटेंशन सह-अस्तित्व में आ सकें। | |||
== सुरक्षित और भरोसेमंद प्रोग्राम विकसित करना == | == सुरक्षित और भरोसेमंद प्रोग्राम विकसित करना == | ||
Line 23: | Line 23: | ||
सियाओ में बड़े पैमाने पर प्रोग्रामिंग इसके द्वारा समर्थित है: | सियाओ में बड़े पैमाने पर प्रोग्रामिंग इसके द्वारा समर्थित है: | ||
* | * मजबूत मॉड्यूल/ऑब्जेक्ट सिस्टम। यह मॉड्यूल-आधारित अलग/वृद्धिशील संकलन प्रदान करता है (जो बिना मेकफ़ाइल की आवश्यकता के स्वचालित है)। | ||
* घोषित करने के लिए एक एकीकृत अभिकथन भाषा (वैकल्पिक) प्रोग्राम गुण (विनिर्देश)। इनमें प्रकार, मोड, निर्धारणा, गैर-विफलता, लागत (समय, मेमोरी) आदि | * घोषित करने के लिए एक एकीकृत अभिकथन भाषा (वैकल्पिक) प्रोग्राम गुण (विनिर्देश)। इनमें प्रकार, मोड, निर्धारणा, गैर-विफलता, लागत (समय, मेमोरी) आदि सम्मिलित हैं। | ||
* इस तरह के अनुरोध (यूनिट परीक्षण सहित) की स्वत: अनुमान और स्थिर/गतिशील जांच। | * इस तरह के अनुरोध (यूनिट परीक्षण सहित) की स्वत: अनुमान और स्थिर/गतिशील जांच। | ||
सियाओ के पास छोटे में प्रोग्रामिंग के लिए भी समर्थन है: संकलक छोटे निष्पादन योग्य बनाने में सक्षम है (केवल प्रोग्राम द्वारा उपयोग किए जाने वाले बिलिन सहित) और दुभाषिया स्क्रिप्टिंग का समर्थन करता है। | |||
एनवायरनमेंट में | एनवायरनमेंट में एम्बेड करने योग्य स्रोत-स्तर डीबगर और कई निष्पादन विज़ुअलाइज़ेशन टूल के साथ प्रतिष्ठित शीर्ष-स्तर और एक विकसित एमएसीएस इंटरफ़ेस सम्मिलित है। | ||
सियाओ प्रीप्रोसेसर सोर्स-टू-सोर्स प्रोग्राम ट्रांसफॉर्मेशन के माध्यम से स्टैटिक डिबगिंग और वेरिफिकेशन, एसेसमेंट चेकिंग और ऑप्टिमाइज़ेशन को सपोर्ट करता है। ये कार्य सियाओप द्वारा किए जाते हैं, और अलग से वितरित किए जाते हैं)। | |||
== ऑटो- | == ऑटो-डॉक्यूमेंटेशन == | ||
सियाओ में एलपीडॉक सम्मिलित है, एक स्वचालित प्रलेखन जनरेटर। यह (सियाओ) अभिकथनों और मशीन-पठनीय टिप्पणियों से सजे कार्यक्रमों को संसाधित करता है और एचटीएमएल, पीडीएफ, टेक्सिन्फो, इन्फो, मैन, आदि सहित कई स्वरूपों में मैनुअल उत्पन्न करता है, साथ ही ऑनलाइन मदद, एएससीआईआई रीडमे फ़ाइलें, मैनुअल के सूचकांकों के लिए प्रविष्टियाँ (जानकारी, WWW, ...), और WWW वितरण साइटों का रखरखाव करता है। | |||
( | |||
एचटीएमएल, पीडीएफ सहित कई | |||
फ़ाइलें, मैनुअल के सूचकांकों के लिए | |||
== | == सुवाह्यता और दक्षता == | ||
सियाओ कंपाइलर (जो शीर्ष-स्तरीय खोल के बाहर चलाया जा सकता है) आर्किटेक्चर-स्वतंत्र और स्टैंड-अलोन एक्जीक्यूटिव के कई रूपों को उत्पन्न करता है, जो गति, दक्षता और निष्पादन योग्य आकार के साथ चलते हैं जो सामान्य रूप से अन्य उच्च-स्तरीय भाषाओं के साथ बहुत प्रतिस्पर्धी हैं और विशेष रूप से व्यावसायिक और शैक्षणिक प्रोलॉग/सीएलपी सिस्टम के साथ। मॉड्यूल को कॉम्पैक्ट बाइटकोड या सी स्रोत फ़ाइलों में संकलित किया जा सकता है और स्थिर रूप से, गतिशील रूप से, या स्वत: लोड से जुड़ा हुआ है। | |||
आर्किटेक्चर-स्वतंत्र और स्टैंड-अलोन के कई | |||
जो सामान्य रूप से अन्य उच्च स्तरीय भाषाओं के साथ बहुत | |||
और विशेष रूप से | |||
==अग्रिम पठन== | ==अग्रिम पठन== | ||
Line 58: | Line 47: | ||
* {{cite web |url=http://dtai.cs.kuleuven.be/projects/ALP/newsletter/nov06/content/Systems/content.html |title=The CIAO Multiparadigm Language and Program Development Environment |editor=Enrico Pontelli}} | * {{cite web |url=http://dtai.cs.kuleuven.be/projects/ALP/newsletter/nov06/content/Systems/content.html |title=The CIAO Multiparadigm Language and Program Development Environment |editor=Enrico Pontelli}} | ||
* {{cite web |url=http://portal.acm.org/citation.cfm?id=1787557 |title=Multiparadigm programming in object-oriented languages: current research report on the workshop MPOOL'07 |author=Kei Davis, Jörg Striegnitz |publisher=ECOOP'07 Proceedings of the 2007 conference on Object-oriented technology}} | * {{cite web |url=http://portal.acm.org/citation.cfm?id=1787557 |title=Multiparadigm programming in object-oriented languages: current research report on the workshop MPOOL'07 |author=Kei Davis, Jörg Striegnitz |publisher=ECOOP'07 Proceedings of the 2007 conference on Object-oriented technology}} | ||
==संदर्भ== | ==संदर्भ== | ||
{{Reflist}} | {{Reflist}} | ||
{{DEFAULTSORT:Ciao (programming language)}} | {{DEFAULTSORT:Ciao (programming language)}} | ||
[[Category: Machine Translated Page]] | [[Category:Created On 15/05/2023|Ciao (programming language)]] | ||
[[Category: | [[Category:Machine Translated Page|Ciao (programming language)]] | ||
[[Category:Pages with broken file links|Ciao (programming language)]] | |||
[[Category:Pages with script errors|Ciao (programming language)]] | |||
[[Category:Templates Vigyan Ready|Ciao (programming language)]] | |||
[[Category:कार्यात्मक तर्क प्रोग्रामिंग भाषाएं|Ciao (programming language)]] | |||
[[Category:कार्यात्मक भाषाएँ|Ciao (programming language)]] | |||
[[Category:क्रॉस-प्लेटफ़ॉर्म सॉफ़्टवेयर|Ciao (programming language)]] | |||
[[Category:क्रॉस-प्लेटफॉर्म मुफ्त सॉफ्टवेयर|Ciao (programming language)]] | |||
[[Category:गतिशील रूप से टाइप की गई प्रोग्रामिंग भाषाएँ|Ciao (programming language)]] | |||
[[Category:तर्क प्रोग्रामिंग भाषाएँ|Ciao (programming language)]] | |||
[[Category:निःशुल्क संकलक और दुभाषिए|Ciao (programming language)]] | |||
[[Category:पटकथा भाषाएँ|Ciao (programming language)]] | |||
[[Category:पाठ-उन्मुख प्रोग्रामिंग भाषाएँ|Ciao (programming language)]] | |||
[[Category:वस्तु-उन्मुख प्रोग्रामिंग भाषाएँ|Ciao (programming language)]] |
Latest revision as of 11:36, 24 May 2023
सियाओ एक सामान्य-उद्देश्य वाली प्रोग्रामिंग भाषा है जो तर्क (लॉजिक), विवशता (कन्सट्रैन्ट), कार्यात्मक, उच्च-क्रम और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग शैलियों का समर्थन करती है। इसके मुख्य डिजाइन उद्देश्य उच्च अभिव्यंजक शक्ति, विस्तारशीलता, सुरक्षा, विश्वसनीयता और कुशल निष्पादन हैं।[1]
भाषा विशेषताएँ
सियाओ एक पूर्ण प्रोलॉग सिस्टम (आईएसओ-प्रोलॉग का समर्थन), प्रोलॉग के घोषणात्मक उपसमुच्चय और एक्सटेंशन, कार्यात्मक प्रोग्रामिंग (सुस्त मूल्यांकन (लेजी इवैल्यूएशन) सहित), उच्च-क्रम (विधेय सार के साथ), बाधा प्रोग्रामिंग, और ऑब्जेक्ट्स, साथ ही फीचर शर्तों (रिकॉर्ड) प्रदान करता है। ), दृढ़ता, कई नियंत्रण नियम (चौड़ाई-पहली खोज, पुनरावृत्त गहराई, ...), समवर्ती (थ्रेड्स/इंजन), वितरित निष्पादन (एजेंट), और समानांतर निष्पादन। पुस्तकालय डब्ल्यूडब्ल्यूडब्ल्यू प्रोग्रामिंग, सॉकेट्स, बाहरी इंटरफेस ((सी, जावा, टीसीएलटीके, रिलेशनल डेटाबेस, आदि), आदि का समर्थन करते हैं।
सियाओ एक एक्स्टेंसिबल मॉड्यूलर डिज़ाइन के साथ कर्नेल पर बनाया गया है जो भाषा को प्रतिबंधित और विस्तारित करने की अनुमति देता है - इसे भाषा-निर्माण भाषा के रूप में देखा जा सकता है। इन प्रतिबंधों और एक्सटेंशन को प्रत्येक प्रोग्राम मॉड्यूल पर अलग से सक्रिय किया जा सकता है ताकि अलग-अलग मॉड्यूल के लिए एक ही एप्लिकेशन में कई एक्सटेंशन सह-अस्तित्व में आ सकें।
सुरक्षित और भरोसेमंद प्रोग्राम विकसित करना
सियाओ में बड़े पैमाने पर प्रोग्रामिंग इसके द्वारा समर्थित है:
- मजबूत मॉड्यूल/ऑब्जेक्ट सिस्टम। यह मॉड्यूल-आधारित अलग/वृद्धिशील संकलन प्रदान करता है (जो बिना मेकफ़ाइल की आवश्यकता के स्वचालित है)।
- घोषित करने के लिए एक एकीकृत अभिकथन भाषा (वैकल्पिक) प्रोग्राम गुण (विनिर्देश)। इनमें प्रकार, मोड, निर्धारणा, गैर-विफलता, लागत (समय, मेमोरी) आदि सम्मिलित हैं।
- इस तरह के अनुरोध (यूनिट परीक्षण सहित) की स्वत: अनुमान और स्थिर/गतिशील जांच।
सियाओ के पास छोटे में प्रोग्रामिंग के लिए भी समर्थन है: संकलक छोटे निष्पादन योग्य बनाने में सक्षम है (केवल प्रोग्राम द्वारा उपयोग किए जाने वाले बिलिन सहित) और दुभाषिया स्क्रिप्टिंग का समर्थन करता है।
एनवायरनमेंट में एम्बेड करने योग्य स्रोत-स्तर डीबगर और कई निष्पादन विज़ुअलाइज़ेशन टूल के साथ प्रतिष्ठित शीर्ष-स्तर और एक विकसित एमएसीएस इंटरफ़ेस सम्मिलित है।
सियाओ प्रीप्रोसेसर सोर्स-टू-सोर्स प्रोग्राम ट्रांसफॉर्मेशन के माध्यम से स्टैटिक डिबगिंग और वेरिफिकेशन, एसेसमेंट चेकिंग और ऑप्टिमाइज़ेशन को सपोर्ट करता है। ये कार्य सियाओप द्वारा किए जाते हैं, और अलग से वितरित किए जाते हैं)।
ऑटो-डॉक्यूमेंटेशन
सियाओ में एलपीडॉक सम्मिलित है, एक स्वचालित प्रलेखन जनरेटर। यह (सियाओ) अभिकथनों और मशीन-पठनीय टिप्पणियों से सजे कार्यक्रमों को संसाधित करता है और एचटीएमएल, पीडीएफ, टेक्सिन्फो, इन्फो, मैन, आदि सहित कई स्वरूपों में मैनुअल उत्पन्न करता है, साथ ही ऑनलाइन मदद, एएससीआईआई रीडमे फ़ाइलें, मैनुअल के सूचकांकों के लिए प्रविष्टियाँ (जानकारी, WWW, ...), और WWW वितरण साइटों का रखरखाव करता है।
सुवाह्यता और दक्षता
सियाओ कंपाइलर (जो शीर्ष-स्तरीय खोल के बाहर चलाया जा सकता है) आर्किटेक्चर-स्वतंत्र और स्टैंड-अलोन एक्जीक्यूटिव के कई रूपों को उत्पन्न करता है, जो गति, दक्षता और निष्पादन योग्य आकार के साथ चलते हैं जो सामान्य रूप से अन्य उच्च-स्तरीय भाषाओं के साथ बहुत प्रतिस्पर्धी हैं और विशेष रूप से व्यावसायिक और शैक्षणिक प्रोलॉग/सीएलपी सिस्टम के साथ। मॉड्यूल को कॉम्पैक्ट बाइटकोड या सी स्रोत फ़ाइलों में संकलित किया जा सकता है और स्थिर रूप से, गतिशील रूप से, या स्वत: लोड से जुड़ा हुआ है।
अग्रिम पठन
- Manuel V. Hermenegildo; et al. (2011). "An Overview of Ciao and its Design Philosophy". arXiv:1102.5497 [cs.PL].
- The Ciao Development Team. "The Ciao System Home".
- Enrico Pontelli (ed.). "The CIAO Multiparadigm Language and Program Development Environment".
- Kei Davis, Jörg Striegnitz. "Multiparadigm programming in object-oriented languages: current research report on the workshop MPOOL'07". ECOOP'07 Proceedings of the 2007 conference on Object-oriented technology.
संदर्भ
- ↑ "सियाओ सिस्टम". ciao-lang.org. Retrieved 2017-08-12.