लिम्बो (प्रोग्रामिंग लैंग्वेज): Difference between revisions

From Vigyanwiki
(Created page with "{{Short description|Programming language}} {{Other uses|Limbo (disambiguation)}} {{more citations needed|date=October 2013}} {{Infobox programming language |name = Limbo |lo...")
 
(TEXT)
Line 1: Line 1:
{{Short description|Programming language}}
{{Short description|Programming language}}
{{Other uses|Limbo (disambiguation)}}
{{Other uses|लिंबो (विसंदिग्धीकरण )}}
{{more citations needed|date=October 2013}}
{{more citations needed|date=October 2013}}
{{Infobox programming language
{{Infobox programming language
Line 22: Line 22:
  |website = {{URL|http://www.vitanuova.com/inferno/limbo.html}}
  |website = {{URL|http://www.vitanuova.com/inferno/limbo.html}}
}}
}}
लिम्बो वितरित सिस्टम लिखने के लिए एक [[प्रोग्रामिंग भाषा]] है और इनफर्नो (ऑपरेटिंग सिस्टम) के लिए [[अनुप्रयोग प्रक्रिया सामग्री]] लिखने के लिए इस्तेमाल की जाने वाली भाषा है। इसे [[सीन डोरवर्ड]], [[फिल विंटरबॉटम]] और [[रोब पाइक]] द्वारा [[बेल लैब्स]] में डिजाइन किया गया था।<ref>{{cite web |url=http://www.vitanuova.com/inferno/limbo.html |title=Inferno Application Programming |website= vitanuova |publisher= vitanuova |access-date=January 26, 2021}}</ref>
लिम्बो वितरित प्रणालियाँ लिखने के लिए एक [[प्रोग्रामिंग भाषा]] है और इनफर्नो (संचालन प्रणाली) के लिए [[अनुप्रयोग प्रक्रिया सामग्री]] लिखने के लिए इस्तेमाल की जाने वाली भाषा है। इसे [[सीन डोरवर्ड]], [[फिल विंटरबॉटम]] और [[रोब पाइक]] द्वारा [[बेल लैब्स]] में अभिकल्पित किया गया था।<ref>{{cite web |url=http://www.vitanuova.com/inferno/limbo.html |title=Inferno Application Programming |website= vitanuova |publisher= vitanuova |access-date=January 26, 2021}}</ref>
लिम्बो [[संकलक]] [[कंप्यूटर आर्किटेक्चर]]-इंडिपेंडेंट [[वस्तु कोड]] उत्पन्न करता है जिसे बाद में [[डिस वर्चुअल मशीन]] द्वारा व्याख्या किया जाता है या प्रदर्शन को बेहतर बनाने के लिए रनटाइम से ठीक पहले संकलित किया जाता है। इसलिए सभी लिम्बो एप्लिकेशन सभी इन्फर्नो प्लेटफार्मों पर पूरी तरह से पोर्टेबल हैं।


संगामिति के लिए लिम्बो का दृष्टिकोण C. A. R. होरे की संचार अनुक्रमिक प्रक्रियाओं (CSP) से प्रेरित था, जैसा कि पाइक की पिछली [[newsques]] भाषा और विंटरबॉटम की [[एलेफ़ (प्रोग्रामिंग भाषा)]] में कार्यान्वित और संशोधित किया गया था।
लिम्बो [[संकलक]] [[कंप्यूटर आर्किटेक्चर|कंप्यूटर शिल्प विद्या]]-स्वतंत्र [[वस्तु कोड|वस्तु कूट]] उत्पन्न करता है जिसकी बाद में [[डिस वर्चुअल मशीन|डिस आभासी यंत्र]] द्वारा व्याख्या की जाती है या प्रदर्शन को बेहतर बनाने के लिए कार्यावधि से ठीक पहले संकलित किया जाता है। इसलिए सभी लिम्बो एप्लिकेशन सभी इन्फर्नो मंच पर पूरी तरह से सुवाह्य हैं।
 
संगामिति के लिए लिम्बो का दृष्टिकोण C. A. R. होरे की संचार अनुक्रमिक प्रक्रियाओं (CSP) से प्रेरित था, जैसा कि पाइक की पिछली [[newsques|न्यूज़क्वीक]] भाषा और विंटरबॉटम की [[एलेफ़ (प्रोग्रामिंग भाषा)]] में कार्यान्वित और संशोधित किया गया था।


== भाषा सुविधाएँ ==
== भाषा सुविधाएँ ==
Line 31: Line 32:
* [[प्रतिरूपकता (प्रोग्रामिंग)]]
* [[प्रतिरूपकता (प्रोग्रामिंग)]]
* [[समवर्ती प्रोग्रामिंग]]
* [[समवर्ती प्रोग्रामिंग]]
* संकलन और रन-टाइम पर मजबूत [[प्रकार की जाँच]]
* संकलन और कार्यावधि पर मजबूत [[प्रकार की जाँच]]
* टाइप किए गए [[चैनल (प्रोग्रामिंग)]] पर इंटरप्रोसेस संचार
* टाइप किए गए [[चैनल (प्रोग्रामिंग)]] पर अंतःप्रक्रम संचार
* स्वचालित कचरा संग्रहण (कंप्यूटर विज्ञान)
* स्वचालित कचरा संग्रहण (कंप्यूटर विज्ञान)
* सरल [[सार डेटा प्रकार]]
* सरल [[सार डेटा प्रकार]]


== वर्चुअल मशीन ==
== आभासी यंत्र ==
डिस वर्चुअल मशीन जो लिम्बो कोड को निष्पादित करती है, एक सीआईएससी-जैसी वीएम है, जिसमें अंकगणित, नियंत्रण प्रवाह, [[डेटा गति]], [[प्रक्रिया (कंप्यूटिंग)]] निर्माण, प्रक्रियाओं के बीच सिंक्रनाइज़ करना और संचार करना, कोड के मॉड्यूल लोड करना और उच्च-स्तरीय डेटा के लिए समर्थन शामिल है। -प्रकार: तार, सरणियाँ, सूचियाँ और संचार चैनल।<ref>{{Cite web |date=2000 |url=http://www.vitanuova.com/inferno/papers/dis.html |title=Dis Virtual Machine Specification |access-date=2 February 2015 |publisher=Vita Nuova}}</ref> यह चक्रीय डेटा के लिए एक हाइब्रिड [[संदर्भ गिनती]] और एक [[रीयल-टाइम कंप्यूटिंग]]|रीयल-टाइम गारबेज कलेक्शन (कंप्यूटर साइंस)|गारबेज-कलेक्टर का उपयोग करता है।<ref name="gc">{{cite journal | url = http://doc.cat-v.org/inferno/concurrent_gc/concurrent_gc.pdf | title = Very Concurrent Mark and Sweep Garbage Collection without Fine-Grain Synchronization | author = Lorenz Huelsbergen and Phil Winterbottom}}</ref>
डिस आभासी यंत्र जो लिम्बो कूट को निष्पादित करती है, एक CISC-जैसी VM है, जिसमें अंकगणित, नियंत्रण प्रवाह, [[डेटा गति]], [[प्रक्रिया (कंप्यूटिंग)]] निर्माण, प्रक्रियाओं के बीच तुल्यकालन करना और संचार करना, कूट के अनुखंड लोड करना और उच्च-स्तरीय डेटा-प्रकार: तार, सरणियाँ, सूचियाँ और संचार सरणि के लिए समर्थन सम्मिलित है।<ref>{{Cite web |date=2000 |url=http://www.vitanuova.com/inferno/papers/dis.html |title=Dis Virtual Machine Specification |access-date=2 February 2015 |publisher=Vita Nuova}}</ref> यह चक्रीय डेटा के लिए एक संकर [[संदर्भ गिनती]] और एक [[रीयल-टाइम कंप्यूटिंग|समयोचित कचरा-संग्रहकर्ता]] का उपयोग करता है।<ref name="gc">{{cite journal | url = http://doc.cat-v.org/inferno/concurrent_gc/concurrent_gc.pdf | title = Very Concurrent Mark and Sweep Garbage Collection without Fine-Grain Synchronization | author = Lorenz Huelsbergen and Phil Winterbottom}}</ref>
डिस के डिजाइन के पहलू एटी एंड टी हॉबिट माइक्रोप्रोसेसर से प्रेरित थे, जैसा कि मूल [[बीबॉक्स]] में इस्तेमाल किया गया था।
 
डिस की अभिकल्पना के पहलू AT&T हॉबिट सूक्ष्मप्रक्रमक से प्रेरित थे, जैसा कि मूल [[बीबॉक्स|Beबॉक्स]] में इस्तेमाल किया गया था।


== उदाहरण ==
== उदाहरण ==
Line 54: Line 56:
  कमांड लागू करें;
  कमांड लागू करें;
   
   
  sys.m शामिल करें;
  sys.m सम्मिलित करें;
     sys: sys;
     sys: sys;
   
   
  ड्रॉ.एम शामिल करें;
  ड्रॉ.एम सम्मिलित करें;


  श.एम शामिल करें;
  श.एम सम्मिलित करें;
   
   
  init (शून्य: रेफरी ड्रा-> संदर्भ, शून्य: स्ट्रिंग की सूची)
  init (शून्य: रेफरी ड्रा-> संदर्भ, शून्य: स्ट्रिंग की सूची)
Line 69: Line 71:


== किताबें ==
== किताबें ==
इन्फर्नो ऑपरेटिंग सिस्टम और लिम्बो प्रोग्रामिंग लैंग्वेज के तीसरे संस्करण का वर्णन पाठ्यपुस्तक इन्फर्नो प्रोग्रामिंग विद लिम्बो में किया गया है  {{ISBN|0-470-84352-7}} (चिचेस्टर: जॉन विली एंड संस, 2003), [[फिलिप स्टेनली-मारबेल]] द्वारा। एक अन्य पाठ्यपुस्तक द इन्फर्नो प्रोग्रामिंग बुक: एन इंट्रोडक्शन टू प्रोग्रामिंग फॉर द इन्फर्नो डिस्ट्रिब्यूटेड सिस्टम, मार्टिन एटकिंस, चार्ल्स फोर्सिथ, रॉब पाइक और हॉवर्ड ट्रिकी द्वारा शुरू की गई थी, लेकिन कभी जारी नहीं हुई।
इन्फर्नो संचालन प्रणाली और लिम्बो प्रोग्रामिंग भाषा के तीसरे संस्करण का वर्णन [[फिलिप स्टेनली-मारबेल]] द्वारा पाठ्यपुस्तक इन्फर्नो प्रोग्रामिंग विद लिम्बो {{ISBN|0-470-84352-7}} (चिचेस्टर: जॉन विली एंड संस, 2003) में किया गया है। एक अन्य पाठ्यपुस्तक द इन्फर्नो प्रोग्रामिंग बुक: एन इंट्रोडक्शन टू प्रोग्रामिंग फॉर द इन्फर्नो डिस्ट्रिब्यूटेड सिस्टम, मार्टिन एटकिंस, चार्ल्स फोर्सिथ, रॉब पाइक और हॉवर्ड ट्रिकी द्वारा प्रारम्भ की गई थी, लेकिन कभी जारी नहीं हुई।


== यह भी देखें ==
== यह भी देखें ==
{{Portal|Free and open-source software}}
{{Portal|Free and open-source software}}
* इन्फर्नो (ऑपरेटिंग सिस्टम) ऑपरेटिंग सिस्टम
* इन्फर्नो संचालन प्रणाली
* एलेफ (प्रोग्रामिंग लैंग्वेज), लिंबो का पूर्ववर्ती
* एलेफ (प्रोग्रामिंग लैंग्वेज), लिंबो का पूर्ववर्ती
* [[बेल लैब्स से प्लान 9]]
* [[बेल लैब्स से प्लान 9|बेल लैब्स से योजना 9]]
* [[जाओ (प्रोग्रामिंग भाषा)]], Google से समान भाषा
* [[जाओ (प्रोग्रामिंग भाषा)|गो (प्रोग्रामिंग भाषा)]], गूगल से समान भाषा
* एटी एंड टी हॉबिट, एक प्रोसेसर आर्किटेक्चर जिसने डिस वीएम को प्रेरित किया
* AT&T हॉबिट, एक संसाधक शिल्प विद्या जिसने डिस VM को प्रेरित किया


==संदर्भ==
==संदर्भ==

Revision as of 01:02, 27 February 2023

Limbo
ParadigmConcurrent
द्वारा डिज़ाइन किया गयाSean Dorward, Phil Winterbottom, Rob Pike
DeveloperBell Labs / Vita Nuova Holdings
पहली प्रस्तुति1995; 29 years ago (1995)
टाइपिंग अनुशासनStrong
ओएसInferno
लाइसेंसGNU GPL v2, see NOTICE in limbo subfolder of the tarball
वेबसाइटwww.vitanuova.com/inferno/limbo.html
Major implementations
Dis virtual machine
Influenced by
C, Pascal, CSP, Alef, Newsqueak
Influenced
Stackless Python, Go, Rust

लिम्बो वितरित प्रणालियाँ लिखने के लिए एक प्रोग्रामिंग भाषा है और इनफर्नो (संचालन प्रणाली) के लिए अनुप्रयोग प्रक्रिया सामग्री लिखने के लिए इस्तेमाल की जाने वाली भाषा है। इसे सीन डोरवर्ड, फिल विंटरबॉटम और रोब पाइक द्वारा बेल लैब्स में अभिकल्पित किया गया था।[1]

लिम्बो संकलक कंप्यूटर शिल्प विद्या-स्वतंत्र वस्तु कूट उत्पन्न करता है जिसकी बाद में डिस आभासी यंत्र द्वारा व्याख्या की जाती है या प्रदर्शन को बेहतर बनाने के लिए कार्यावधि से ठीक पहले संकलित किया जाता है। इसलिए सभी लिम्बो एप्लिकेशन सभी इन्फर्नो मंच पर पूरी तरह से सुवाह्य हैं।

संगामिति के लिए लिम्बो का दृष्टिकोण C. A. R. होरे की संचार अनुक्रमिक प्रक्रियाओं (CSP) से प्रेरित था, जैसा कि पाइक की पिछली न्यूज़क्वीक भाषा और विंटरबॉटम की एलेफ़ (प्रोग्रामिंग भाषा) में कार्यान्वित और संशोधित किया गया था।

भाषा सुविधाएँ

लिम्बो निम्नलिखित सुविधाओं का समर्थन करता है:

आभासी यंत्र

डिस आभासी यंत्र जो लिम्बो कूट को निष्पादित करती है, एक CISC-जैसी VM है, जिसमें अंकगणित, नियंत्रण प्रवाह, डेटा गति, प्रक्रिया (कंप्यूटिंग) निर्माण, प्रक्रियाओं के बीच तुल्यकालन करना और संचार करना, कूट के अनुखंड लोड करना और उच्च-स्तरीय डेटा-प्रकार: तार, सरणियाँ, सूचियाँ और संचार सरणि के लिए समर्थन सम्मिलित है।[2] यह चक्रीय डेटा के लिए एक संकर संदर्भ गिनती और एक समयोचित कचरा-संग्रहकर्ता का उपयोग करता है।[3]

डिस की अभिकल्पना के पहलू AT&T हॉबिट सूक्ष्मप्रक्रमक से प्रेरित थे, जैसा कि मूल Beबॉक्स में इस्तेमाल किया गया था।

उदाहरण

लिम्बो Ada (प्रोग्रामिंग भाषा)-शैली की परिभाषाओं का उपयोग इस प्रकार करता है:

<वाक्यविन्यास प्रकाश लैंग = लिम्बो>

नाम: = मूल्य टाइप करें;
नाम 0, नाम 1: प्रकार = मान;
नाम 2, नाम 3: प्रकार;
नाम 2 = मूल्य;

</वाक्यविन्यास हाइलाइट>

हैलो वर्ल्ड

<वाक्यविन्यास प्रकाश लैंग = लिम्बो>

कमांड लागू करें;

sys.m सम्मिलित करें;
    sys: sys;

ड्रॉ.एम सम्मिलित करें;
श.एम सम्मिलित करें;

init (शून्य: रेफरी ड्रा-> संदर्भ, शून्य: स्ट्रिंग की सूची)
{
    sys = लोड Sys Sys-> PATH;
    sys->प्रिंट (हैलो वर्ल्ड!\n);
}

</वाक्यविन्यास हाइलाइट>

किताबें

इन्फर्नो संचालन प्रणाली और लिम्बो प्रोग्रामिंग भाषा के तीसरे संस्करण का वर्णन फिलिप स्टेनली-मारबेल द्वारा पाठ्यपुस्तक इन्फर्नो प्रोग्रामिंग विद लिम्बो ISBN 0-470-84352-7 (चिचेस्टर: जॉन विली एंड संस, 2003) में किया गया है। एक अन्य पाठ्यपुस्तक द इन्फर्नो प्रोग्रामिंग बुक: एन इंट्रोडक्शन टू प्रोग्रामिंग फॉर द इन्फर्नो डिस्ट्रिब्यूटेड सिस्टम, मार्टिन एटकिंस, चार्ल्स फोर्सिथ, रॉब पाइक और हॉवर्ड ट्रिकी द्वारा प्रारम्भ की गई थी, लेकिन कभी जारी नहीं हुई।

यह भी देखें

संदर्भ

  1. "Inferno Application Programming". vitanuova. vitanuova. Retrieved January 26, 2021.
  2. "Dis Virtual Machine Specification". Vita Nuova. 2000. Retrieved 2 February 2015.
  3. Lorenz Huelsbergen and Phil Winterbottom. "Very Concurrent Mark and Sweep Garbage Collection without Fine-Grain Synchronization" (PDF). {{cite journal}}: Cite journal requires |journal= (help)


बाहरी संबंध