मल्टीलिस्प

From Vigyanwiki
Revision as of 12:53, 26 May 2023 by alpha>Indicwiki (Created page with "{{Infobox programming language | name = MultiLisp | logo = <!-- Filename only --> | logo caption = | screenshot = <!-- Filename only --> | screenshot caption = | paradigms =...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
MultiLisp
ParadigmsMulti-paradigm: functional, imperative, concurrent, meta
परिवारLisp
द्वारा डिज़ाइन किया गयाRobert H. Halstead Jr.
DeveloperMassachusetts Institute of Technology (MIT
पहली प्रस्तुति1980; 44 years ago (1980)
टाइपिंग अनुशासनDynamic, latent, strong
स्कोपLexical
कार्यान्वयन भाषाInterlisp
प्लेटफॉर्मConcert multiprocessor
लाइसेंसProprietary
Influenced by
Lisp, Scheme
Influenced
Gambit, Interlisp-VAX

MultiLisp एक कार्यात्मक प्रोग्रामिंग प्रोग्रामिंग भाषा है, भाषा लिस्प (प्रोग्रामिंग भाषा) की एक बोली (कंप्यूटिंग), और इसकी बोली योजना (प्रोग्रामिंग भाषा), समानांतर कंप्यूटिंग निष्पादन और साझा मेमोरी के निर्माण के साथ विस्तारित है। इन एक्सटेंशन में साइड इफेक्ट (कंप्यूटर विज्ञान) शामिल है, जो मल्टीलिस्प गैर नियतात्मक प्रोग्रामिंग प्रदान करता है। इसके समानांतर-प्रोग्रामिंग एक्सटेंशन के साथ, मल्टीलिस्प में कुछ असामान्य कचरा संग्रह (कंप्यूटर विज्ञान) और कार्य शेड्यूलिंग एल्गोरिदम भी थे। योजना की तरह, मल्टीलिस्प को कंप्यूटर बीजगणित के लिए अनुकूलित किया गया था। कुछ समानांतर प्रोग्रामिंग भाषाओं के विपरीत, मल्टीलिस्प ने साइड इफेक्ट पैदा करने और समानांतरता को स्पष्ट रूप से पेश करने के लिए शामिल किया।

इसे 1980 के दशक की शुरुआत में रॉबर्ट एच. हैल्स्टेड जूनियर द्वारा 32-प्रोसेसर कॉन्सर्ट बहु पर उपयोग के लिए डिज़ाइन किया गया था, जिसे तब मैसाचुसेट्स की तकनीकी संस्था (MIT) में विकसित किया जा रहा था और इंटरलिस्प में लागू किया गया था। इसने योजना बोलियों गैम्बिट (योजना कार्यान्वयन) के विकास को प्रभावित किया,[1] और इंटरलिस्प-वैक्स

पीसीकॉल और फ्यूचर

MultiLisp PCALL Macro (कंप्यूटर विज्ञान) के साथ समानता प्राप्त करता है, जहाँ

(PCALL Fun A B C ...) के बराबर है

(Fun A B C ...) सिवाय इसके कि पैरामीटर (कंप्यूटर प्रोग्रामिंग)A, B, C, आदि को स्पष्ट रूप से समानांतर में मूल्यांकन करने की अनुमति है; यह मूल्यांकन के सामान्य क्रम को रोकता है, जो अनुक्रमिक और बाएं से दाएं होता है। यह फ़्यूचर (प्रोग्रामिंग) नामक समानांतर प्रोग्रामिंग निर्माण का भी उपयोग करता है, जो आलसी मूल्यांकन के साथ मिलकर कांटा (सिस्टम कॉल) जैसा दिखता है। इस निर्माण का उपयोग करते हुए, एक अभिव्यक्ति जैसे

(cons (FUTURE A) (FUTURE B)) लिखा जा सकता है, जो अभिव्यक्ति ए और बी के मूल्यांकन को ओवरलैप करेगा, न केवल एक दूसरे के साथ, बल्कि उन संगणनाओं के साथ जो दोष कॉल के परिणाम का उपयोग करते हैं, जब तक कि एक ऑपरेशन नहीं किया जाता है जिसके लिए ए या बी के मूल्य के बारे में सही जानकारी की आवश्यकता होती है। .

यह भी देखें

संदर्भ

  1. WikiSysop; Mikaelm; Bjlucier; Thedens, Dan (2019-02-06). "पहला क़दम". Retrieved 2019-04-21.
  • Halstead, Robert H. Jr. (October 1985). "MultiLisp: A Language for Concurrent Symbolic Computation". ACM Transactions on Programming Languages and Systems. 7 (4): 501–538. doi:10.1145/4472.4478. S2CID 1285424.
  • Koomen, Johannes A. G. M. (1980). The Interlisp Virtual Machine: A Study of its Design and its Implementation as Multilisp (MSc). University of British Columbia.
  • Bates, Raymond L.; Dyer, David; Koomen, Johannes A. G. M. (15–18 August 1982). "Implementation of Interlisp on the VAX". LFP '82 Proceedings of the 1982 ACM symposium on LISP and functional programming. ACM symposium on LISP and functional programming. Pittsburgh, Pennsylvania, United States. pp. 81–87.
  • Halstead, Robert H. Jr. (1984). The MultiLisp Language: Lisp for a Multiprocessor. Conference on 5th Generation Computers. Tokyo, Japan.
  • Martins, W.S. "Parallel Implementations of Functional Languages". Proceedings of the 4th Int. Workshop on the Parallel Implementation of Functional Languages: 92.
  • Skillicorn, David B.; Talia, Domenico (June 1998). "Models and languages for parallel computation". ACM Computing Surveys. 30 (2): 123–169. doi:10.1145/280277.280278. S2CID 9308854.