किला (प्रोग्रामिंग भाषा)
This article's use of external links may not follow Wikipedia's policies or guidelines. (September 2016) (Learn how and when to remove this template message) |
Developer | Sun Labs |
---|---|
पहली प्रस्तुति | 2006 |
Final release | 1.0_5033
/ September 7, 2011 |
टाइपिंग अनुशासन | Static |
प्लेटफॉर्म | Java SE 1.6+ |
ओएस | Cross-platform |
लाइसेंस | BSD |
वेबसाइट | github |
Influenced by | |
Fortran, Scala, Haskell |
फोर्ट्रेस उच्च-प्रदर्शन कंप्यूटिंग के लिए एक बंद प्रयोगात्मक प्रोग्रामिंग भाषा है, जिसे सन माइक्रोसिस्टम्स द्वारा DARPA के उच्च उत्पादकता कंप्यूटिंग सिस्टम प्रोजेक्ट से वित्त पोषण के साथ बनाया गया है। भाषा डिजाइनरों में से एक गाइ एल. स्टील जूनियर थे, जिनके पिछले काम में स्कीम (प्रोग्रामिंग भाषा), सामान्य लिस्प और जावा (प्रोग्रामिंग भाषा) शामिल हैं।
डिज़ाइन
फोर्ट्रेस नाम का उद्देश्य एक सुरक्षित फोरट्रान को सूचित करना था, यानी, उच्च-प्रदर्शन गणना के लिए एक भाषा जो आधुनिक प्रोग्रामिंग भाषा सिद्धांतों के बराबर अमूर्तता और प्रकार की सुरक्षा प्रदान करती है।[1] भाषा की विशेषताओं में अंतर्निहित समानता, यूनिकोड समर्थन और गणितीय संकेतन के समान ठोस वाक्यविन्यास शामिल हैं। भाषा को फ़ोरट्रान के समान डिज़ाइन नहीं किया गया था। वाक्यात्मक रूप से, यह सबसे अधिक स्काला (प्रोग्रामिंग भाषा), मानक एमएल और हास्केल (प्रोग्रामिंग भाषा) से मिलता जुलता है। किले को शुरू से ही कई वाक्यात्मक स्टाइलशीट के लिए डिज़ाइन किया गया था। स्रोत कोड को ASCII पाठ के रूप में, यूनिकोड में, या एक सुंदर छवि के रूप में प्रस्तुत किया जा सकता है। यह आसान पढ़ने के लिए प्रस्तुत आउटपुट में गणितीय प्रतीकों और अन्य प्रतीकों के समर्थन की अनुमति देगा। फोर्टिफाई नामक एक इमैक-आधारित टूल ASCII-आधारित फोर्ट्रेस स्रोत कोड को LaTeX आउटपुट में बदल देता है।[2]
किले को अत्यधिक समानांतर होने के साथ-साथ जावा से ली गई पुस्तकालयों के भीतर समृद्ध कार्यक्षमता रखने के लिए डिज़ाइन किया गया था। उदाहरण के लिए, for
लूप निर्माण एक समानांतर ऑपरेशन था, जो अंतर्निहित कार्यान्वयन के आधार पर जरूरी नहीं कि सख्ती से रैखिक तरीके से पुनरावृत्त हो। हालांकि for
कन्स्ट्रक्ट एक लाइब्रेरी फ़ंक्शन था और इसे भाषा में निर्मित करने के बजाय प्रोग्रामर की पसंद के किसी अन्य संस्करण द्वारा प्रतिस्थापित किया जा सकता था।
फोर्ट्रेस के डिजाइनरों ने इसके सिंटैक्स को यथासंभव छद्मकोड के करीब बनाया और स्यूडोकोड में कलन विधि का प्रतिनिधित्व करने के लिए अंग्रेजी भाषा और मानक गणितीय नोटेशन के सामान्य उपयोग पैटर्न को निकालने के लिए स्यूडोकोड का उपयोग करके सैकड़ों कंप्यूटर विज्ञान और गणित के पेपर, पाठ्यक्रम, किताबें और पत्रिकाओं का विश्लेषण किया। . फिर उन्होंने कंपाइलर को स्यूडोकोड और निष्पादन योग्य किले के बीच एक-से-एक पत्राचार बनाए रखने की कोशिश की।[3][better source needed]
इतिहास
फोर्ट्रेस उच्च उत्पादकता कंप्यूटिंग सिस्टम परियोजना के वित्तपोषण से बनाई गई तीन भाषाओं में से एक थी; अन्य थे IBM से X10 (प्रोग्रामिंग भाषा) और Cray|Cray, Inc से चैपल (प्रोग्रामिंग भाषा)। नवंबर 2006 में, जब DARPA ने HPCS परियोजना के तीसरे चरण के लिए फंडिंग को मंजूरी दी, तो X10 और चैपल को वित्त पोषित किया गया, लेकिन फोर्ट्रेस को नहीं। ,[4] जिससे किले के भविष्य के बारे में अनिश्चितता पैदा हो गई।
जनवरी 2007 में, फोर्ट्रेस को ओपन-सोर्स के रूप में जारी किया गया था।[5] फोर्ट्रेस लैंग्वेज स्पेसिफिकेशन का संस्करण 1.0 अप्रैल 2008 में जावा वर्चुअल मशीन को लक्षित करने वाले एक अनुपालन कार्यान्वयन के साथ जारी किया गया था।
जुलाई 2012 में, स्टील ने मौजूदा वर्चुअल मशीनों पर फोर्ट्रेस के टाइप सिस्टम का उपयोग करने की जटिलताओं का हवाला देते हुए घोषणा की कि फोर्ट्रेस पर सक्रिय विकास एक संक्षिप्त समापन अवधि के बाद बंद हो जाएगा।[6]
उदाहरण: नमस्ते विश्व!
यह आदर्श हेलो, वर्ल्ड का किला संस्करण है! कार्यक्रम कार्यक्रम, जैसा कि फोर्ट्रेस रेफरेंस कार्ड में प्रस्तुत किया गया है:[2]
<पूर्व> घटक नमस्ते निष्पादन योग्य निर्यात करें रन() = println ("हैलो, वर्ल्ड!") अंत </पूर्व>
एक्सपोर्ट स्टेटमेंट प्रोग्राम को निष्पादन योग्य प्रोग्राम बनाता है और फोर्ट्रेस में प्रत्येक निष्पादन योग्य प्रोग्राम को रन() फ़ंक्शन को लागू करना होगा। वह फ़ाइल जहां प्रोग्राम को संकलन के लिए सहेजा गया है, उसका वही नाम होना चाहिए जो प्रारंभिक घटक विवरण में निर्दिष्ट है। Println() फ़ंक्शन हैलो, वर्ल्ड! का आउटपुट देता है! स्क्रीन पर शब्द.
यह भी देखें
संदर्भ
- ↑ Eric Allen; David Chase; Joe Hallett; Victor Luchangco; Jan-Willem Maessen; Sukyoung Ryu; Guy L. Steele Jr.; Sam Tobin-Hochstadt; et al. (2008-03-31). "The Fortress Language Specification: Version 1.0" (PDF). research.sun.com. Sun Microsystems. Archived from the original (PDF) on 2013-01-20.
- ↑ 2.0 2.1 "प्रोजेक्ट किला संदर्भ कार्ड" (PDF). Java.net. Archived from the original (PDF) on 2016-03-04. Retrieved 2016-09-24.
- ↑ "pseudocode - Standards for pseudo code?". Stack Overflow. 2009-10-16. Retrieved 2016-09-24.
- ↑ Josh Simons (November 22, 2006). "Sun Not Selected for HPCS Phase III: My Thoughts". The Navel of Narcissus. Archived from the original on 2012-01-06 – via blogs.oracle.com.
- ↑ "किले के बारे में क्या अच्छा है?". gbcacm.org. Greater Boston Chapter of the ACM. Archived from the original on 2012-08-02.
- ↑ Gls-Oracle (2012-07-20). "किले का समापन". Project Fortress. Archived from the original on 2016-09-24 – via blogs.oracle.com.
बाहरी संबंध
- Project Fortress website
- Active Timeline of Specification and Reference Implementation
- The Fortress Language Specification (Latest version is 1.0, March 31, 2008)
- The Soul of Fortress - Interview with Fortress developer Guy Steele
- Fortress Open Source Project Home (BSD License)
- Sun's Programming Language Research Group
- Fortress Publications and Specifications
- Fortress Plugin For Eclipse (alpha)
- Fortress FAQ
- Fortress Tutorial Slides
- Fortress Mailing Lists
- Lambda the Ultimate article
- Sun's Fortran replacement goes open-source (CNET News.com, January 12, 2007)
- Fortress presentation
- Parallel By Default -- An Annotated Fortress Overview presentation
- All articles lacking reliable references
- Articles lacking reliable references from March 2014
- Collapse templates
- Navigational boxes
- Navigational boxes without horizontal lists
- Sidebars with styles needing conversion
- Templates generating microformats
- Templates that are not mobile friendly
- Wikipedia metatemplates
- ऐरे प्रोग्रामिंग भाषाएँ
- समवर्ती प्रोग्रामिंग भाषाएँ
- बंद की गई प्रोग्रामिंग भाषाएँ
- फोरट्रान प्रोग्रामिंग भाषा परिवार
- जेवीएम प्रोग्रामिंग भाषाएँ
- संख्यात्मक प्रोग्रामिंग भाषाएँ
- माप की इकाइयों का समर्थन करने वाली प्रोग्रामिंग भाषाएँ
- प्रोग्रामिंग भाषाएँ 2006 में बनाई गईं
- बीएसडी लाइसेंस का उपयोग करने वाला सॉफ़्टवेयर
- Machine Translated Page
- Created On 12/04/2024