बेसिक (BASIC): Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 65: Line 65:
== विस्फोटक वृद्धि: घरेलू कंप्यूटर युग ==
== विस्फोटक वृद्धि: घरेलू कंप्यूटर युग ==
{{See also| ऑन-बोर्ड बेसिक वाले कंप्यूटरों की सूची}}
{{See also| ऑन-बोर्ड बेसिक वाले कंप्यूटरों की सूची}}
[[File:CommodoreBasic.png|thumb|[[ कमोडोर 64 ]] . पर [[ कमोडोर बेसिक ]] v2.0]]
[[File:CommodoreBasic.png|thumb|[[ कमोडोर 64 ]]पर [[ कमोडोर बेसिक |कमोडोर बेसिक]] v2.0]]
[[File:Msxbasic.png|thumb|[[ एमएसएक्स बेसिक ]] संस्करण 3.0]]
[[File:Msxbasic.png|thumb|[[ एमएसएक्स बेसिक | MSX बेसिक]] संस्करण 3.0]]
[[File:Pn-pravez-class-5.jpg|thumb|right|ट्रेन बेसिक हर दिन! - एक रूसी स्कूल में एक पोस्टर (नीचे केंद्र) पढ़ता है (सी। 1985-1986)]]
[[File:Pn-pravez-class-5.jpg|thumb|right|ट्रेन बेसिक हर दिन! - एक रूसी स्कूल में एक पोस्टर (नीचे केंद्र) पढ़ता है (सी। 1985-1986)]]
1970 के दशक के मध्य में पहले माइक्रो कंप्यूटर की शुरुआत बेसिक के लिए विस्फोटक विकास की शुरुआत थी। इसका यह फायदा था कि यह युवा डिजाइनरों और कंप्यूटर के शौकीनों के लिए काफी अच्छी तरह से जाना जाता था, जिन्होंने माइक्रो कंप्यूटर में रुचि ली थी, जिनमें से कई ने मिनी या मेनफ्रेम पर बेसिक देखा था। 1975 में दिज्क्स्त्रा के प्रसिद्ध निर्णय के बावजूद, उन छात्रों को अच्छी प्रोग्रामिंग पढ़ाना व्यावहारिक रूप से असंभव है, जिनका बेसिक से पूर्व संपर्क रहा है: संभावित प्रोग्रामर के रूप में वे मानसिक रूप से पुनर्जनन की आशा से परे विकृत हैं,<ref>{{Cite book|chapter-url=https://www.cs.utexas.edu/users/EWD/ewd04xx/EWD498.PDF|chapter=How do we tell truths that might hurt |title=Selected Writings on Computing: A Personal Perspective |first=Edsger W. |last=Dijkstra|date=June 18, 1975 |publication-date=1982 |publisher=[[Springer-Verlag]]|isbn=978-0387906522|oclc=693424350 |pages=[https://archive.org/details/selectedwritings0000dijk/page/129 129–131] |url=https://archive.org/details/selectedwritings0000dijk/page/129}}</ref> बेसिक उन कुछ भाषाओं में से थी जो बिना प्रशिक्षण के उन लोगों द्वारा उपयोग करने योग्य उच्च स्तर की थी और दिन के माइक्रो कंप्यूटर में फिट होने के लिए पर्याप्त छोटी थी, जिससे यह प्रारंभिक माइक्रो कंप्यूटर पर वास्तविक मानक प्रोग्रामिंग भाषा बन गई।
1970 के दशक के मध्य में पहले माइक्रो कंप्यूटर की शुरुआत बेसिक के लिए विस्फोटक विकास की शुरुआत थी। इसका यह फायदा था कि यह युवा डिजाइनरों और कंप्यूटर के शौकीनों के लिए काफी अच्छी तरह से जाना जाता था, जिन्होंने माइक्रो कंप्यूटर में रुचि ली थी, जिनमें से कई ने मिनी या मेनफ्रेम पर बेसिक देखा था। 1975 में दिज्क्स्त्रा के प्रसिद्ध निर्णय के बावजूद, उन छात्रों को अच्छी प्रोग्रामिंग पढ़ाना व्यावहारिक रूप से असंभव है, जिनका बेसिक से पूर्व संपर्क रहा है: संभावित प्रोग्रामर के रूप में वे मानसिक रूप से पुनर्जनन की आशा से परे विकृत हैं,<ref>{{Cite book|chapter-url=https://www.cs.utexas.edu/users/EWD/ewd04xx/EWD498.PDF|chapter=How do we tell truths that might hurt |title=Selected Writings on Computing: A Personal Perspective |first=Edsger W. |last=Dijkstra|date=June 18, 1975 |publication-date=1982 |publisher=[[Springer-Verlag]]|isbn=978-0387906522|oclc=693424350 |pages=[https://archive.org/details/selectedwritings0000dijk/page/129 129–131] |url=https://archive.org/details/selectedwritings0000dijk/page/129}}</ref> बेसिक उन कुछ भाषाओं में से थी जो बिना प्रशिक्षण के उन लोगों द्वारा उपयोग करने योग्य उच्च स्तर की थी और दिन के माइक्रो कंप्यूटर में फिट होने के लिए पर्याप्त छोटी थी, जिससे यह प्रारंभिक माइक्रो कंप्यूटर पर वास्तविक मानक प्रोग्रामिंग भाषा बन गई।
Line 78: Line 78:
इस अवधि में जैसे-जैसे बेसिक की लोकप्रियता बढ़ी, कंप्यूटर पत्रिकाओं ने वीडियो गेम, उपयोगिताओं और अन्य कार्यक्रमों के लिए बेसिक में पूर्ण स्रोत कोड प्रकाशित किया। बेसिक की सीधी प्रकृति को देखते हुए, पत्रिका से [[ टाइप-इन प्रोग्राम |टाइप-इन प्रोग्राम]] और प्रोग्राम को निष्पादित करना एक साधारण मामला था। विशिष्ट कंप्यूटरों के लिए कार्यक्रमों की विशेषता वाली विभिन्न पत्रिकाएं प्रकाशित की गईं, हालांकि कुछ बुनियादी कार्यक्रमों को सार्वभौमिक माना जाता था और इन्हें बेसिक के किसी भी संस्करण (कभी-कभी मामूली अनुकूलन के साथ) चलाने वाली उपकरणनों में इस्तेमाल किया जा सकता था। टाइप-इन प्रोग्राम की कई किताबें भी उपलब्ध थीं, और विशेष रूप से, अहल ने मूल 101 बेसिक गेम्स के संस्करणों को माइक्रोसॉफ्ट बोली में परिवर्तित किया और इसे क्रिएटिव कंप्यूटिंग से [[ बेसिक कंप्यूटर गेम्स |बेसिक कंप्यूटर गेम्स]] के रूप में प्रकाशित किया। इस पुस्तक और इसके अनुक्रमों ने सैकड़ों तैयार कार्यक्रम प्रदान किए जिन्हें सुगमतासे व्यावहारिक रूप से किसी भी बेसिक-रनिंग प्लेटफॉर्म में परिवर्तित किया जा सकता है।<ref name="basicgames" /><ref>{{Cite book|url=http://www.atariarchives.org/morebasicgames/|title=More basic computer games|last=Ahl|first=David H.|date=1979|publisher=Creative Computing Press|isbn=978-0894801372|oclc=839377789|location=Morristown|language=en}}</ref><ref>{{Cite book|url=http://www.atariarchives.org/bigcomputergames/|title=Big computer games|last=Ahl|first=David H.|date=1984|publisher=Creative Computing Press|isbn=978-0916688400|oclc=872675092|location=Morris Plains, N.J.|language=en}}</ref> यह पुस्तक 1978 में स्टोर तक पहुंची, जैसे ही घरेलू कंप्यूटर बाजार शुरू हो रहा था, और यह पहली मिलियन-बिकने वाली कंप्यूटर पुस्तक बन गई। बाद के पैकेज, जैसे [[ बेसिक प्रोग्राम करना सीखें |बेसिक प्रोग्राम करना सीखें]] में भी एक परिचयात्मक फोकस के रूप में गेमिंग होगा। व्यवसाय-केंद्रित CP/M कंप्यूटरों पर, जो जल्द ही छोटे व्यावसायिक वातावरण में व्यापक हो गए, माइक्रोसॉफ्ट बेसिक ([[ MBASIC |M बेसिक]]) प्रमुख अनुप्रयोगों में से एक था।<ref name="oldcomputer">{{Cite web|url=http://oldcomputers.net/osborne-1.html|title=Osborne 1|website=oldcomputers.net|access-date=June 14, 2017}}</ref>                                                                                                                                                                                                                                1978 में, डेविड लियन ने द बेसिक हैंडबुक: एन इनसाइक्लोपीडिया ऑफ द बेसिक कंप्यूटर लैंग्वेज का पहला संस्करण प्रकाशित किया, जिसमें 78 से अधिक विभिन्न कंप्यूटरों में कीवर्ड का दस्तावेजीकरण किया गया था। 1981 तक, दूसरे संस्करण ने 250 से अधिक विभिन्न कंप्यूटरों से खोजशब्दों का दस्तावेजीकरण किया, जो माइक्रो कंप्यूटर युग की विस्फोटक वृद्धि को प्रदर्शित करता है।<ref>{{cite book |last1=Lien |first1=David |title=The BASIC Handbook |date=1981 |publisher=Compusoft Publishing |location=San Diego, CA |isbn=0-932760-00-7 |page=inside cover |edition=Second}}</ref>
इस अवधि में जैसे-जैसे बेसिक की लोकप्रियता बढ़ी, कंप्यूटर पत्रिकाओं ने वीडियो गेम, उपयोगिताओं और अन्य कार्यक्रमों के लिए बेसिक में पूर्ण स्रोत कोड प्रकाशित किया। बेसिक की सीधी प्रकृति को देखते हुए, पत्रिका से [[ टाइप-इन प्रोग्राम |टाइप-इन प्रोग्राम]] और प्रोग्राम को निष्पादित करना एक साधारण मामला था। विशिष्ट कंप्यूटरों के लिए कार्यक्रमों की विशेषता वाली विभिन्न पत्रिकाएं प्रकाशित की गईं, हालांकि कुछ बुनियादी कार्यक्रमों को सार्वभौमिक माना जाता था और इन्हें बेसिक के किसी भी संस्करण (कभी-कभी मामूली अनुकूलन के साथ) चलाने वाली उपकरणनों में इस्तेमाल किया जा सकता था। टाइप-इन प्रोग्राम की कई किताबें भी उपलब्ध थीं, और विशेष रूप से, अहल ने मूल 101 बेसिक गेम्स के संस्करणों को माइक्रोसॉफ्ट बोली में परिवर्तित किया और इसे क्रिएटिव कंप्यूटिंग से [[ बेसिक कंप्यूटर गेम्स |बेसिक कंप्यूटर गेम्स]] के रूप में प्रकाशित किया। इस पुस्तक और इसके अनुक्रमों ने सैकड़ों तैयार कार्यक्रम प्रदान किए जिन्हें सुगमतासे व्यावहारिक रूप से किसी भी बेसिक-रनिंग प्लेटफॉर्म में परिवर्तित किया जा सकता है।<ref name="basicgames" /><ref>{{Cite book|url=http://www.atariarchives.org/morebasicgames/|title=More basic computer games|last=Ahl|first=David H.|date=1979|publisher=Creative Computing Press|isbn=978-0894801372|oclc=839377789|location=Morristown|language=en}}</ref><ref>{{Cite book|url=http://www.atariarchives.org/bigcomputergames/|title=Big computer games|last=Ahl|first=David H.|date=1984|publisher=Creative Computing Press|isbn=978-0916688400|oclc=872675092|location=Morris Plains, N.J.|language=en}}</ref> यह पुस्तक 1978 में स्टोर तक पहुंची, जैसे ही घरेलू कंप्यूटर बाजार शुरू हो रहा था, और यह पहली मिलियन-बिकने वाली कंप्यूटर पुस्तक बन गई। बाद के पैकेज, जैसे [[ बेसिक प्रोग्राम करना सीखें |बेसिक प्रोग्राम करना सीखें]] में भी एक परिचयात्मक फोकस के रूप में गेमिंग होगा। व्यवसाय-केंद्रित CP/M कंप्यूटरों पर, जो जल्द ही छोटे व्यावसायिक वातावरण में व्यापक हो गए, माइक्रोसॉफ्ट बेसिक ([[ MBASIC |M बेसिक]]) प्रमुख अनुप्रयोगों में से एक था।<ref name="oldcomputer">{{Cite web|url=http://oldcomputers.net/osborne-1.html|title=Osborne 1|website=oldcomputers.net|access-date=June 14, 2017}}</ref>                                                                                                                                                                                                                                1978 में, डेविड लियन ने द बेसिक हैंडबुक: एन इनसाइक्लोपीडिया ऑफ द बेसिक कंप्यूटर लैंग्वेज का पहला संस्करण प्रकाशित किया, जिसमें 78 से अधिक विभिन्न कंप्यूटरों में कीवर्ड का दस्तावेजीकरण किया गया था। 1981 तक, दूसरे संस्करण ने 250 से अधिक विभिन्न कंप्यूटरों से खोजशब्दों का दस्तावेजीकरण किया, जो माइक्रो कंप्यूटर युग की विस्फोटक वृद्धि को प्रदर्शित करता है।<ref>{{cite book |last1=Lien |first1=David |title=The BASIC Handbook |date=1981 |publisher=Compusoft Publishing |location=San Diego, CA |isbn=0-932760-00-7 |page=inside cover |edition=Second}}</ref>
== IBM PC और कम्पैटिबल्स ==
== IBM PC और कम्पैटिबल्स ==
[[File:IBM Cassette BASIC.png|thumb|[[ आईबीएम कैसेट बेसिक ]] 1.10]]
[[File:IBM Cassette BASIC.png|thumb|[[ आईबीएम कैसेट बेसिक | IBM कैसेट बेसिक]] 1.10]]
जब IBM, [[Index.php?title=IBM PC|IBM PC]] डिजाइन कर रहा था, तो उन्होंने मौजूदा घरेलू कंप्यूटरों के प्रतिमान का पालन किया, जिसमें एक अंतर्निहित बेसिक होना था। उन्होंने इसे माइक्रोसॉफ्ट-IBM कैसेट बेसिक से प्राप्त किया-लेकिन माइक्रोसॉफ्ट ने [[Index.php?title=MS-DOS|MS-DOS]] / [[ पीसी दो |PC DOS]] के लिए बेसिक के कई अन्य संस्करण भी तैयार किए जिनमें [[ आईबीएम डिस्क बेसिक |IBM डिस्क बेसिक]] (बेसिक D), [[ आईबीएम बेसिक | IBM बेसिक]] ा (बेसिक A), [[ GW-बेसिक ]](बेसिक-संगत) शामिल हैं। संस्करण जिसे IBM के ROM की आवश्यकता नहीं थी और[[ QBasic | Qबेसिक]] , सभी को आमतौर पर उपकरणनों के साथ बंडल किया जाता है। इसके अलावा उन्होंने पेशेवर प्रोग्रामर के उद्देश्य से माइक्रोसॉफ्ट बेसिक कंपाइलर का उत्पादन किया। टर्बो पास्कल (प्रोग्रामिंग भाषा)-प्रकाशक [[ बोरलैंड |बोरलैंड]] ने 1985 में [[ टर्बो बेसिक |टर्बो बेसिक]] 1.0 प्रकाशित किया (उत्तराधिकारी संस्करण अभी भी मूल लेखक द्वारा [[ PowerBASIC |पावरबेसिक]] नाम से विपणन किए जा रहे हैं)। माइक्रोसॉफ्ट ने विंडो वाले [[ AmigaBASIC | Amigaबेसिक]] को लिखा था जिसे प्री-एम्प्टीव मल्टीटास्किंग GUI अमिगा कंप्यूटर (1985 के अंत / 1986 की शुरुआत) के संस्करण 1.1 के साथ आपूर्ति की गई थी, हालांकि उत्पाद में असामान्य रूप से कोई  माइक्रोसॉफ्ट चिह्न नहीं था।
जब IBM, [[Index.php?title=IBM PC|IBM PC]] डिजाइन कर रहा था, तो उन्होंने मौजूदा घरेलू कंप्यूटरों के प्रतिमान का पालन किया, जिसमें एक अंतर्निहित बेसिक होना था। उन्होंने इसे माइक्रोसॉफ्ट-IBM कैसेट बेसिक से प्राप्त किया-लेकिन माइक्रोसॉफ्ट ने [[Index.php?title=MS-DOS|MS-DOS]] / [[ पीसी दो |PC DOS]] के लिए बेसिक के कई अन्य संस्करण भी तैयार किए जिनमें [[ आईबीएम डिस्क बेसिक |IBM डिस्क बेसिक]] (बेसिक D), [[ आईबीएम बेसिक | IBM बेसिक]] ा (बेसिक A), [[ GW-बेसिक ]](बेसिक-संगत) शामिल हैं। संस्करण जिसे IBM के ROM की आवश्यकता नहीं थी और[[ QBasic | Qबेसिक]] , सभी को आमतौर पर उपकरणनों के साथ बंडल किया जाता है। इसके अलावा उन्होंने पेशेवर प्रोग्रामर के उद्देश्य से माइक्रोसॉफ्ट बेसिक कंपाइलर का उत्पादन किया। टर्बो पास्कल (प्रोग्रामिंग भाषा)-प्रकाशक [[ बोरलैंड |बोरलैंड]] ने 1985 में [[ टर्बो बेसिक |टर्बो बेसिक]] 1.0 प्रकाशित किया (उत्तराधिकारी संस्करण अभी भी मूल लेखक द्वारा [[ PowerBASIC |पावरबेसिक]] नाम से विपणन किए जा रहे हैं)। माइक्रोसॉफ्ट ने विंडो वाले [[ AmigaBASIC | Amigaबेसिक]] को लिखा था जिसे प्री-एम्प्टीव मल्टीटास्किंग GUI अमिगा कंप्यूटर (1985 के अंत / 1986 की शुरुआत) के संस्करण 1.1 के साथ आपूर्ति की गई थी, हालांकि उत्पाद में असामान्य रूप से कोई  माइक्रोसॉफ्ट चिह्न नहीं था।


Line 85: Line 85:
{{Main| विजुअल बेसिक (क्लासिक)}}
{{Main| विजुअल बेसिक (क्लासिक)}}


1991 में, Microsoft ने विजुअल बेसिक(क्लासिक) की शुरुआत की, जो [[ QuickBASIC |Quick बेसिक]] का विकासवादी विकास था। इसमें उस [[ वस्तु उन्मुख भाषा |वस्तु उन्मुख भाषा]] से निर्माण शामिल थे जैसे ब्लॉक-संरचित नियंत्रण कथन, पैरामिट्रीकृत सबरूटीन्स और वैकल्पिक स्थैतिक टाइपिंग के साथ -साथ अन्य भाषाओं जैसे "साथ" और "प्रत्येक के लिए" से ऑब्जेक्ट-ओरिएंटेड निर्माण। भाषा ने अपने पूर्ववर्तियों के साथ कुछ अनुकूलता बनाए रखी, जैसे घोषणाओं के लिए डिम कीवर्ड, "गोसब"/रिटर्न स्टेटमेंट और वैकल्पिक लाइन नंबर जिनका उपयोग त्रुटियों का पता लगाने के लिए किया जा सकता है। विज़ुअल बेसिक के विकास के लिए एक महत्वपूर्ण चालक माइक्रोसॉफ्ट एक्सेल के लिए नई मैक्रो भाषा , एक स्प्रेडशीट थीकार्यक्रम। माइक्रोसॉफ्ट में कई लोगों के लिए आश्चर्य की बात है, जिन्होंने अभी भी इसे शौकियों के लिए एक भाषा के रूप में विपणन किया, वीबी संस्करण 3.0 के रिलीज होने के तुरंत बाद भाषा छोटे कस्टम व्यावसायिक अनुप्रयोगों के लिए व्यापक रूप से उपयोग में आई, जिसे व्यापक रूप से पहला अपेक्षाकृत स्थिर संस्करण माना जाता है।
1991 में, Microsoft ने विजुअल बेसिक(क्लासिक) की शुरुआत की, जो [[ QuickBASIC |Quick बेसिक]] का विकासवादी विकास था। इसमें उस [[ वस्तु उन्मुख भाषा |वस्तु उन्मुख भाषा]] से निर्माण शामिल थे जैसे ब्लॉक-संरचित नियंत्रण कथन, पैरामिट्रीकृत सबरूटीन्स और वैकल्पिक स्थैतिक टाइपिंग के साथ -साथ अन्य भाषाओं जैसे "साथ" और "प्रत्येक के लिए" से ऑब्जेक्ट-ओरिएंटेड निर्माण। भाषा ने अपने पूर्ववर्तियों के साथ कुछ अनुकूलता बनाए रखी, जैसे घोषणाओं के लिए डिम कीवर्ड, "गोसब"/रिटर्न स्टेटमेंट और वैकल्पिक लाइन नंबर जिनका उपयोग त्रुटियों का पता लगाने के लिए किया जा सकता है। विज़ुअल बेसिक के विकास के लिए एक महत्वपूर्ण चालक [[ माइक्रोसॉफ्ट एक्सेल |माइक्रोसॉफ्ट एक्सेल]] के लिए नई [[ मैक्रो भाषा |मैक्रो भाषा]], एक [[ स्प्रेडशीट |स्प्रेडशीट]] थीकार्यक्रम। माइक्रोसॉफ्ट में कई लोगों के लिए आश्चर्य की बात है, जिन्होंने अभी भी इसे शौकियों के लिए एक भाषा के रूप में विपणन किया, वीबी संस्करण 3.0 के रिलीज होने के तुरंत बाद भाषा छोटे कस्टम व्यावसायिक अनुप्रयोगों के लिए व्यापक रूप से उपयोग में आई, जिसे व्यापक रूप से पहला अपेक्षाकृत स्थिर संस्करण माना जाता है।


जबकि कई उन्नत प्रोग्रामर अभी भी इसके उपयोग की खिल्ली उड़ाते हैं, वीबी उस समय तक छोटे व्यवसायों की जरूरतों को कुशलता से पूरा करता था, विंडोज 3.1 चलाने वाले कंप्यूटर इतने तेज हो गए थे कि कई व्यवसाय-संबंधी प्रक्रियाएं "पलक झपकते ही" पूरी की जा सकती थीं। एक "धीमी" भाषा, जब तक बड़ी मात्रा में डेटा शामिल नहीं था। कई छोटे व्यवसाय मालिकों ने पाया कि वे कुछ ही शामों में अपनी खुद की विशेष जरूरतों को पूरा करने के लिए अपने स्वयं के छोटे, फिर भी उपयोगी एप्लिकेशन बना सकते हैं। आखिरकार, VB3 के लंबे जीवनकाल के दौरान, विज़ुअल बेसिक का ज्ञान एक विपणन योग्य कार्य कौशल बन गया था। Microsoft ने 1996 में VBScript और 2001 में Visual Basic .NET का भी निर्माण किया । बाद वाले में अनिवार्य रूप से C# और Java के समान शक्ति है।लेकिन सिंटैक्स के साथ जो मूल मूल भाषा को दर्शाता है। आईडीई , अपने घटना-संचालित जीयूआई निर्माता के साथ , अन्य उपकरणों पर भी प्रभावशाली था, विशेष रूप से ऑब्जेक्ट पास्कल के लिए बोर्लैंड सॉफ्टवेयर के डेल्फी और लाजर जैसे अपने स्वयं के वंश ।  
जबकि कई उन्नत प्रोग्रामर अभी भी इसके उपयोग की खिल्ली उड़ाते हैं, वीबी उस समय तक छोटे व्यवसायों की जरूरतों को कुशलता से पूरा करता था, विंडोज 3.1 चलाने वाले कंप्यूटर इतने तेज हो गए थे कि कई व्यवसाय-संबंधी प्रक्रियाएं "पलक झपकते ही" पूरी की जा सकती थीं। एक "धीमी" भाषा, जब तक बड़ी मात्रा में डेटा शामिल नहीं था। कई छोटे व्यवसाय मालिकों ने पाया कि वे कुछ ही शामों में अपनी खुद की विशेष जरूरतों को पूरा करने के लिए अपने स्वयं के छोटे, फिर भी उपयोगी एप्लिकेशन बना सकते हैं। आखिरकार, VB3 के लंबे जीवनकाल के दौरान, विज़ुअल बेसिक का ज्ञान एक विपणन योग्य कार्य कौशल बन गया था। Microsoft ने 1996 में [[ VBScript |VBScript]] और 2001 में विजुअलBasic .NET का भी निर्माण किया । बाद वाले में अनिवार्य रूप से C# और Java के समान शक्ति है।लेकिन सिंटैक्स के साथ जो मूल मूल भाषा को दर्शाता है। आईडीई , अपने [[ घटना-संचालित प्रोग्रामिंग |घटना-संचालित प्रोग्रामिंग]] जीयूआई निर्माता के साथ , अन्य उपकरणों पर भी प्रभावशाली था, विशेष रूप से [[ ऑब्जेक्ट पास्कल |ऑब्जेक्ट पास्कल]] लिए [[ बोर्लैंड सॉफ्टवेयर |बोर्लैंड सॉफ्टवेयर]] के [[ डेल्फी (सॉफ्टवेयर) |डेल्फी (सॉफ्टवेयर)]] और [[ लाजर (आईडीई) |लाजर (आईडीई)]] जैसे अपने स्वयं के वंश ।<ref>{{cite web| url = https://www.theregister.com/2020/02/14/25_years_delphi_programming/| title = 25 years of Delphi and no Oracle in sight: Not a Visual Basic killer but hard to kill}}</ref>


मूल विज़ुअल बेसिक के अंतिम संस्करण 6.0 के लिए मुख्यधारा का समर्थन 31 मार्च, 2005 को समाप्त हो गया, इसके बाद मार्च 2008 में विस्तारित समर्थन मिला।  11 मार्च, 2020 को, Microsoft ने घोषणा की कि VB.NET भाषा का विकास भी समाप्त हो गया है, हालांकि यह अभी भी समर्थित था।  इस बीच, ज़ोजो और गम्बास जैसे प्रतियोगी मौजूद हैं ।                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      1991 में  , माइक्रोसॉफ्ट ने विजुअल बेसिक (क्लासिक) पेश किया, जो [[ QuickBASIC |Quickबेसिक]] का एक विकासवादी विकास है। इसमें उस भाषा के निर्माण शामिल थे जैसे कि ब्लॉक-संरचित नियंत्रण विवरण, पैरामीटरयुक्त सबरूटीन और वैकल्पिक प्रकार प्रणाली # स्टेटिक के साथ-साथ [[ वस्तु उन्मुख भाषा |वस्तु उन्मुख भाषा]] | ऑब्जेक्ट-ओरिएंटेड कंस्ट्रक्शन अन्य भाषाओं जैसे कि प्रत्येक के साथ और प्रत्येक के लिए। भाषा ने अपने पूर्ववर्तियों के साथ कुछ संगतता बरकरार रखी, जैसे डिक्लेरेशन के लिए डिम कीवर्ड, गोसब / रिटर्न स्टेटमेंट और वैकल्पिक लाइन नंबर जिनका उपयोग त्रुटियों का पता लगाने के लिए किया जा सकता है। विजुअल बेसिक के विकास के लिए एक महत्वपूर्ण ड्राइवर [[ माइक्रोसॉफ्ट एक्सेल |माइक्रोसॉफ्ट एक्सेल]], एक [[ स्प्रेडशीट |स्प्रेडशीट]] प्रोग्राम के लिए नई [[ मैक्रो भाषा |मैक्रो भाषा]] के रूप में था। माइक्रोसॉफ्ट में कई लोगों के आश्चर्य के लिए, जिन्होंने अभी भी इसे शौकियों के लिए एक भाषा के रूप में विपणन किया था, वीबी संस्करण 3.0 के रिलीज के तुरंत बाद भाषा छोटे कस्टम व्यावसायिक अनुप्रयोगों के लिए व्यापक रूप से उपयोग में आई, जिसे व्यापक रूप से पहला अपेक्षाकृत स्थिर संस्करण माना जाता है।
मूल विज़ुअल बेसिक के अंतिम संस्करण 6.0 के लिए मुख्यधारा का समर्थन 31 मार्च, 2005 को समाप्त हो गया, इसके बाद मार्च 2008 में विस्तारित समर्थन मिला।<ref>{{cite web|url=http://msdn2.microsoft.com/en-us/vbrun/ms788707.aspx |title=Product Family Life Cycle Guidelines for Visual Basic 6.0 |publisher=Msdn2.microsoft.com |date=2005-03-31 |access-date=2009-06-16}}</ref> 11 मार्च, 2020 को, Microsoft ने घोषणा की कि VB.NET भाषा का विकास भी समाप्त हो गया है, हालांकि यह अभी भी समर्थित था।<ref>{{Cite web|url=https://devblogs.microsoft.com/vbteam/visual-basic-support-planned-for-net-5-0/|title = Visual Basic support planned for .NET 5.0|date = March 11, 2020}}</ref>इस बीच, ज़ोजो और गम्बास जैसे प्रतियोगी मौजूद हैं ।                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       


जबकि कई उन्नत प्रोग्रामर अभी भी इसके उपयोग का उपहास करते हैं, वीबी ने छोटे व्यवसायों की जरूरतों को कुशलतापूर्वक पूरा किया क्योंकि उस समय तक, विंडोज 3.1 चलाने वाले कंप्यूटर इतने तेज हो गए थे कि धीमी गति का उपयोग करके भी व्यवसाय से संबंधित कई प्रक्रियाएं पलक झपकते ही पूरी की जा सकती थीं। भाषा, जब तक बड़ी मात्रा में डेटा शामिल नहीं थे। कई छोटे व्यवसाय मालिकों ने पाया कि वे अपनी विशेष जरूरतों को पूरा करने के लिए कुछ ही शामों में अपने स्वयं के छोटे, फिर भी उपयोगी एप्लिकेशन बना सकते हैं। आखिरकार, वीबी3 के लंबे जीवनकाल के दौरान, विजुअल बेसिक का ज्ञान एक विपणन योग्य नौकरी कौशल बन गया था।  माइक्रोसॉफ्टने 1996 में [[ VBScript |VBScript]] और 2001 में Visual बेसिक NET का भी निर्माण किया। बाद वाले में अनिवार्य रूप से C Sharp (प्रोग्रामिंग भाषा)|C# और Java (प्रोग्रामिंग भाषा) जैसी ही शक्ति है, लेकिन सिंटैक्स के साथ जो मूल मूल भाषा को दर्शाता है। एकीकृत विकास वातावरण, अपने [[ घटना-संचालित प्रोग्रामिंग |घटना-संचालित प्रोग्रामिंग]]| इवेंट-संचालित जीयूआई बिल्डर के साथ, अन्य उपकरणों पर भी प्रभावशाली था, विशेष रूप से [[ ऑब्जेक्ट पास्कल |ऑब्जेक्ट पास्कल]] के लिए [[ बोर्लैंड सॉफ्टवेयर |बोर्लैंड सॉफ्टवेयर]] का [[ डेल्फी (सॉफ्टवेयर) |डेल्फी (सॉफ्टवेयर)]] और इसके अपने वंशज जैसे [[ लाजर (आईडीई) |लाजर (आईडीई)]]।<ref>{{cite web| url = https://www.theregister.com/2020/02/14/25_years_delphi_programming/| title = 25 years of Delphi and no Oracle in sight: Not a Visual Basic killer but hard to kill}}</ref>                                                                                                                                                                                                                                                                मूल विजुअल बेसिक के अंतिम संस्करण 6.0 के लिए मुख्यधारा का समर्थन 31 मार्च, 2005 को समाप्त हुआ, इसके बाद मार्च 2008 में विस्तारित समर्थन दिया गया।<ref>{{cite web|url=http://msdn2.microsoft.com/en-us/vbrun/ms788707.aspx |title=Product Family Life Cycle Guidelines for Visual Basic 6.0 |publisher=Msdn2.microsoft.com |date=2005-03-31 |access-date=2009-06-16}}</ref> 11 मार्च, 2020 को,  माइक्रोसॉफ्टने घोषणा की कि VB.NET भाषा का विकास भी समाप्त हो गया था, हालाँकि यह अभी भी समर्थित था।<ref>{{Cite web|url=https://devblogs.microsoft.com/vbteam/visual-basic-support-planned-for-net-5-0/|title = Visual Basic support planned for .NET 5.0|date = March 11, 2020}}</ref> इस बीच, [[ Xojo |Xojo]] और Gambas जैसे प्रतियोगी मौजूद हैं।
[[File:TriBasicExample.png|thumb|तीन आधुनिक बुनियादी संस्करण: मोनो (सॉफ़्टवेयर) बेसिक, OpenOffice.org बेसिक और [[ झींगे |झींगे]]]]
 
[[File:TriBasicExample.png|thumb|तीन आधुनिक बुनियादी संस्करण: मोनो (सॉफ़्टवेयर) बेसिक, OpenOffice.org बेसिक और [[ झींगे ]]]]


== 1990 के बाद के संस्करण और बोलियाँ ==
== 1990 के बाद के संस्करण और बोलियाँ ==
1990 के बाद से कई अन्य बेसिक बोलियाँ भी उभरी हैं, जिनमें Qबेसिक से प्रेरित [[ खुला स्रोत सॉफ्टवेयर ]] [[ QB64 ]] और [[ FreeBASIC | Freeबेसिक]] , और विज़ुअल बेसिक-स्टाइल [[ तेज़ी से ]], बेसिक फ़ॉर Qt और Gambas शामिल हैं। आधुनिक वाणिज्यिक अवतारों में [[ PureBasic | Pureबेसिक]] , Powerबेसिक, Xojo, Monkey X और [[ True BASIC | True बेसिक]] (कर्टज़ द्वारा नियंत्रित कंपनी से डार्टमाउथ बेसिक का सीधा उत्तराधिकारी) शामिल हैं।
1990 के बाद से कई अन्य बेसिक बोलियाँ भी उभरी हैं, जिनमें Q बेसिक से प्रेरित [[ खुला स्रोत सॉफ्टवेयर |खुला स्रोत सॉफ्टवेयर,]] [[ QB64 |QB64]] और [[ FreeBASIC |नि: शुल्क बेसिक]], और विज़ुअल बेसिक-स्टाइल [[ तेज़ी से |तेज़ी से]], बेसिक फ़ॉर Qt और गाम्बस शामिल हैं। आधुनिक वाणिज्यिक अवतारों में [[ PureBasic |शुद्ध बेसिक]], Power बेसिक, Xojo, Monkey X और [[ True BASIC |True बेसिक]](कर्टज़ द्वारा नियंत्रित कंपनी से डार्टमाउथ बेसिक का सीधा उत्तराधिकारी) शामिल हैं।


कई वेब-आधारित सरल बेसिक दुभाषिए भी अब मौजूद हैं, जिनमें माइक्रोसॉफ्टका  माइक्रोसॉफ्टछोटा बेसिक भी शामिल है। बेसिक के कई संस्करण अब ऐप्पल [[ ऐप स्टोर (आईओएस) ]], या एंड्रॉइड के लिए [[ Google Play ]] स्टोर के माध्यम से [[ स्मार्टफोन ]] और टैबलेट के लिए भी उपलब्ध हैं। गेम कंसोल पर, निन्टेंडो 3DS और [[ निंटेंडो डी ]] के लिए एक एप्लिकेशन जिसे [[ छोटा कंप्यूटर ]] कहा जाता है, डीएस बटन समर्थन के साथ बेसिक के थोड़े संशोधित संस्करण में प्रोग्रामिंग की अनुमति देता है। [[ Nintendo स्विच ]] के लिए एक संस्करण भी जारी किया गया है।
कई वेब-आधारित सरल बेसिक दुभाषिए भी मौजूद हैं, जिनमें माइक्रोसॉफ्ट का बेसिक भी शामिल है। बेसिक के कई संस्करण अब ऐप्पल [[ ऐप स्टोर (आईओएस) |ऐप स्टोर (IOS)]], या एंड्रॉइड के लिए [[ Google Play |गूगल प्ले]] स्टोर के माध्यम से [[ स्मार्टफोन |स्मार्टफोन]] और टैबलेट के लिए भी उपलब्ध हैं। गेम कंसोल पर, निन्टेंडो 3DS और [[ निंटेंडो डी | निंटेंडो D]] के लिए एक एप्लिकेशन जिसे [[ छोटा कंप्यूटर |छोटा कंप्यूटर]] कहा जाता है, DS बटन समर्थन के साथ बेसिक के थोड़े संशोधित संस्करण में प्रोग्रामिंग की अनुमति देता है। [[ Nintendo स्विच | निंटेंडो स्विच]] के लिए एक संस्करण भी जारी किया गया है।


== कैलकुलेटर ==
== कैलकुलेटर ==
[[ टेक्सस उपकरण ]], एचपी, कैसियो और अन्य द्वारा बनाए गए रेखांकन और अन्यथा प्रोग्राम योग्य कैलकुलेटर पर बेसिक के वेरिएंट उपलब्ध हैं।
[[ टेक्सस उपकरण |टेक्सस उपकरण]], HP, कैसियो और अन्य द्वारा बनाए गए रेखांकन और अन्यथा प्रोग्राम योग्य कैलकुलेटर पर बेसिक के वेरिएंट उपलब्ध हैं।


== विंडोज कमांड-लाइन ==
== विंडोज कमांड-लाइन ==
Qबेसिक, EXE फ़ाइलें बनाने के लिए लिंकर के बिना माइक्रोसॉफ्टQuickबेसिक का एक संस्करण, ऑपरेटिंग सिस्टम के [[ Windows NT ]] और DOS-Windows 95 स्ट्रीम में मौजूद है और इसे [[ Windows 7 ]] जैसे हाल के रिलीज़ के लिए प्राप्त किया जा सकता है जो उनके पास नहीं है। डॉस 5 से पहले, बेसिक दुभाषिया GW-बेसिक|GW-बेसिक था। Quickबेसिक  माइक्रोसॉफ्टद्वारा घर और कार्यालय बिजली उपयोगकर्ता और छोटे पैमाने पर व्यावसायिक विकास के लिए जारी की गई तीन भाषाओं की एक श्रृंखला का हिस्सा है; QuickC और QuickPascal अन्य दो हैं। [[ विंडोज 95 ]] और 98 के लिए, जिसमें व्यतिक्रम रूप से Qबेसिक स्थापित नहीं है, उन्हें इंस्टॉलेशन डिस्क से कॉपी किया जा सकता है, जिसमें पुराने और वैकल्पिक सॉफ़्टवेयर के लिए निर्देशिकाओं का एक सेट होगा; अन्य लापता कमांड जैसे Exe2Bin और अन्य इन्हीं निर्देशिकाओं में हैं।
Q बेसिक, EXE फ़ाइलें बनाने के लिए लिंकर के बिना माइक्रोसॉफ्ट Q बेसिक का एक संस्करण, ऑपरेटिंग सिस्टम के [[ Windows NT |विंडोज़ NT]] और DOS- विंडोज़ 95 स्ट्रीम में मौजूद है और इसे [[ Windows 7 |विंडोज़ 7]] जैसे हाल के रिलीज़ के लिए प्राप्त किया जा सकता है जो उनके पास नहीं है। DOS 5 से पहले, बेसिक दुभाषिया GW-बेसिक था। Q बेसिक माइक्रोसॉफ्ट द्वारा घर और कार्यालय बिजली उपयोगकर्ता और छोटे पैमाने पर व्यावसायिक विकास के लिए जारी की गई तीन भाषाओं की एक श्रृंखला का हिस्सा है; QC और Q Pascal अन्य दो हैं। [[ विंडोज 95 |विंडोज 95]] और 98 के लिए, जिसमें व्यतिक्रम रूप से Qबेसिक स्थापित नहीं है, उन्हें इंस्टॉलेशन डिस्क से कॉपी किया जा सकता है, जिसमें पुराने और वैकल्पिक सॉफ़्टवेयर के लिए निर्देशिकाओं का एक सेट होगा; अन्य लापता कमांड जैसे Exe2Bin और अन्य इन्हीं निर्देशिकाओं में हैं।


== अन्य ==
== अन्य ==
[[File:Nintendo-Famicom-Family-Basic-Keyboard-wCart.jpg|thumb|right|बेसिक कुछ वीडियो गेम सिस्टम में आया, जैसे कि निंटेंडो [[ निन्टेंडो एंटरटेनमेंट सिस्टम ]]।]]
[[File:Nintendo-Famicom-Family-Basic-Keyboard-wCart.jpg|thumb|right|बेसिक कुछ वीडियो गेम सिस्टम में आया, जैसे कि निंटेंडो [[ निन्टेंडो एंटरटेनमेंट सिस्टम ]]।]]
विभिन्न माइक्रोसॉफ्ट, लोटस, और कोरल ऑफिस सूट और संबंधित उत्पाद विजुअल बेसिक के साथ एक या दूसरे रूप में प्रोग्राम करने योग्य हैं, जिसमें [[ लोटसस्क्रिप्ट ]] भी शामिल है, जो वीबीए 6 के समान है। होस्ट एक्सप्लोरर टर्मिनल एमुलेटर डब्ल्यूडब्ल्यूबी को मैक्रो भाषा के रूप में उपयोग करता है; या हाल ही में जिस प्रोग्राम और सुइट में यह समाहित है, उसे हमिंगबर्ड बेसिक के नाम से जाने जाने वाले इन-हाउस बेसिक वेरिएंट में प्रोग्राम किया जा सकता है। वेब सामग्री, आउटलुक 97, इंटरनेट एक्सप्लोरर और विंडोज स्क्रिप्ट होस्ट प्रोग्रामिंग के लिए वीबीस्क्रिप्ट संस्करण का उपयोग किया जाता है। WSH में अनुप्रयोगों के लिए एक विजुअल बेसिक (VBA) इंजन भी है, जो VBScript, JScript, और कई मालिकाना या ओपन सोर्स इंजन के साथ व्यतिक्रम इंजनों के तीसरे के रूप में स्थापित है, जिसे [[ PerlScript ]], Rexx- आधारित इंजनों के एक जोड़े, Python की तरह स्थापित किया जा सकता है। , रूबी, टीसीएल, डेल्फी, एक्सएलएनटी, पीएचपी, और अन्य; जिसका अर्थ है कि बेसिक के दो संस्करणों का उपयोग अन्य उल्लिखित भाषाओं के साथ-साथ लोटसस्क्रिप्ट, एक WSF फ़ाइल में, घटक ऑब्जेक्ट मॉडल और अन्य WSH और VBA निर्माणों के माध्यम से किया जा सकता है। VBScript उन भाषाओं में से एक है जिसे 4Dos, 4NT और Take Command एन्हांस्ड शेल द्वारा एक्सेस किया जा सकता है। सैक्सबेसिक और डब्ल्यूडब्ल्यूबी भी बेसिक कार्यान्वयन की विजुअल बेसिक लाइन के समान हैं। माइक्रोसॉफ्ट वर्ड के लिए प्री-ऑफिस 97 मैक्रो भाषा को [[ वर्डबेसिक ]] के रूप में जाना जाता है। एक्सेल 4 और 5 विजुअल बेसिक का ही मैक्रो भाषा के रूप में उपयोग करते हैं। [[ चिपमंक बेसिक ]], 1970 के दशक के बेसिक्स के समान एक पुराने स्कूल का दुभाषिया, [[ लिनक्स ]], [[ माइक्रोसॉफ़्ट विंडोज़ ]] और मैकओएस के लिए उपलब्ध है।
विभिन्न माइक्रोसॉफ्ट, लोटस, और कोरल ऑफिस सूट और संबंधित उत्पाद विजुअल बेसिक के साथ या दूसरे रूप में प्रोग्राम करने योग्य हैं, जिसमें [[ लोटसस्क्रिप्ट |लोटसस्क्रिप्ट]] भी शामिल है, जो BBA 6 के समान है। होस्ट एक्सप्लोरर टर्मिनल एमुलेटर WWB को मैक्रो भाषा के रूप में उपयोग करता है; या हाल ही में जिस प्रोग्राम और सुइट में यह समाहित है, उसे हमिंगबर्ड बेसिक के नाम से जाने जाने वाले इन-हाउस बेसिक वेरिएंट में प्रोग्राम किया जा सकता है। वेब सामग्री, आउटलुक 97, इंटरनेट एक्सप्लोरर और विंडोज स्क्रिप्ट होस्ट प्रोग्रामिंग के लिए VB स्क्रिप्ट संस्करण का उपयोग किया जाता है। WSH में अनुप्रयोगों के लिए एक विजुअल बेसिक (VBA) इंजन भी है, जो VBScript, JScript, और कई मालिकाना या ओपन सोर्स इंजन के साथ व्यतिक्रम इंजनों के तीसरे के रूप में स्थापित है, जिसे [[ PerlScript |PerlScrip]], Rexx- आधारित इंजनों के एक जोड़े, Python की तरह स्थापित किया जा सकता है। रूबी, TCL, डेल्फी, XLNT, PHP, और अन्य; जिसका अर्थ है कि बेसिक के दो संस्करणों का उपयोग अन्य उल्लिखित भाषाओं के साथ-साथ लोटसस्क्रिप्ट, WSF फ़ाइल में, घटक ऑब्जेक्ट मॉडल और अन्य WSH और VBA निर्माणों के माध्यम से किया जा सकता है। VBScript उन भाषाओं में से एक है जिसे 4Dos, 4NT और टेक कमांड एन्हांस्ड शेल द्वारा एक्सेस किया जा सकता है। सैक्सबेसिक और WWB भी बेसिक कार्यान्वयन की विजुअल बेसिक लाइन के समान हैं। माइक्रोसॉफ्ट वर्ड के लिए प्री-ऑफिस 97 मैक्रो भाषा को [[ वर्डबेसिक |वर्डबेसिक]] के रूप में जाना जाता है। एक्सेल 4 और 5 विजुअल बेसिक का ही मैक्रो भाषा के रूप में उपयोग करते हैं। [[ चिपमंक बेसिक |चिपमंक बेसिक]], 1970 के दशक के बेसिक्स के समान एक पुराने स्कूल का दुभाषिया, [[ लिनक्स |लिनक्स]], [[ माइक्रोसॉफ़्ट विंडोज़ |माइक्रोसॉफ़्ट विंडोज़]] और मैकओएस के लिए उपलब्ध है।


== विरासत ==
== विरासत ==
पर्सनल कंप्यूटर पर बेसिक दुभाषियों की सर्वव्यापकता ऐसी थी कि पाठ्यपुस्तकों में एक बार सरल ट्राई इट इन बेसिक अभ्यास शामिल थे जो छात्रों को कक्षा या घरेलू कंप्यूटर पर गणितीय और कम्प्यूटेशनल अवधारणाओं के साथ प्रयोग करने के लिए प्रोत्साहित करते थे। उस समय की लोकप्रिय कंप्यूटर पत्रिकाओं में आमतौर पर टाइप-इन प्रोग्राम शामिल होते थे।
पर्सनल कंप्यूटर पर बेसिक दुभाषियों की सर्वव्यापकता ऐसी थी कि पाठ्यपुस्तकों में एक बार सरल ट्राई इट इन बेसिक अभ्यास शामिल थे जो छात्रों को कक्षा या घरेलू कंप्यूटर पर गणितीय और कम्प्यूटेशनल अवधारणाओं के साथ प्रयोग करने के लिए प्रोत्साहित करते थे। उस समय की लोकप्रिय कंप्यूटर पत्रिकाओं में आमतौर पर टाइप-इन प्रोग्राम शामिल होते थे।


भविष्यवादी और विज्ञान-कथा लेखक [[ डेविड ब्रिनो ]] ने 2006 के सैलून लेख में सर्वव्यापी बेसिक के नुकसान पर शोक व्यक्त किया<ref>{{Cite web|url=https://www.salon.com/2006/09/14/basic_2/|archive-url=https://web.archive.org/web/20130918213750/http://www.salon.com/2006/09/14/basic_2/singleton/|archive-date=September 18, 2013|url-status=dead|title=Why Johnny Can't Code|last=Brin|first=David|date=September 14, 2006|website=[[Salon (website)|Salon]]|access-date=2017-06-19}}</ref> जैसा कि अन्य लोगों ने किया है जिन्होंने इस युग के दौरान पहली बार कंप्यूटर का उपयोग किया था। बदले में, लेख ने माइक्रोसॉफ्ट को माइक्रोसॉफ्ट स्मॉल बेसिक को विकसित करने और जारी करने के लिए प्रेरित किया;<ref>{{Cite web|url=http://msdn.microsoft.com/en-us/beginner/hh182234.aspx|archive-url=https://web.archive.org/web/20140317001756/http://msdn.microsoft.com/en-us/beginner/hh182234.aspx|archive-date=March 17, 2014|url-status=dead|title=Small Basic|website=[[Microsoft Developer Network]]|access-date=June 19, 2017}}</ref> इसने [[ बेसिक-256 ]] जैसी समान परियोजनाओं को भी प्रेरित किया।<ref>{{cite web| url = https://basic256.org/| title = BASIC-256 homepage}}</ref> डार्टमाउथ कॉलेज ने 1 मई 2014 को बेसिक के लिए 50वीं वर्षगांठ समारोह आयोजित किया,<ref>{{Cite news|url=http://www.unionleader.com/apps/pbcs.dll/article?AID=/20140429/NEWS04/140429054|title=Dartmouth plans celebration for 50th anniversary of BASIC computer language|newspaper=[[New Hampshire Union Leader]]|date=April 28, 2014|access-date=June 14, 2017}}</ref> अन्य संगठनों की तरह; वीबीए प्रोग्रामर्स के कम से कम एक संगठन ने 1999 में 35वीं वर्षगांठ का आयोजन किया।<ref>{{Cite web|url=https://www.google.com/search?q=50th+anniversary+of+BASIC|title=50th anniversary of BASIC – Google Search|website=[[Google]]}}</ref>
भविष्यवादी और विज्ञान-कथा लेखक [[ डेविड ब्रिनो |डेविड ब्रिनो]] ने 2006 के सैलून लेख में सर्वव्यापी बेसिक के नुकसान पर शोक व्यक्त किया<ref>{{Cite web|url=https://www.salon.com/2006/09/14/basic_2/|archive-url=https://web.archive.org/web/20130918213750/http://www.salon.com/2006/09/14/basic_2/singleton/|archive-date=September 18, 2013|url-status=dead|title=Why Johnny Can't Code|last=Brin|first=David|date=September 14, 2006|website=[[Salon (website)|Salon]]|access-date=2017-06-19}}</ref> जैसा कि अन्य लोगों ने किया है जिन्होंने इस युग के दौरान पहली बार कंप्यूटर का उपयोग किया था। बदले में, लेख ने माइक्रोसॉफ्ट को माइक्रोसॉफ्ट स्मॉल बेसिक को विकसित करने और जारी करने के लिए प्रेरित किया;<ref>{{Cite web|url=http://msdn.microsoft.com/en-us/beginner/hh182234.aspx|archive-url=https://web.archive.org/web/20140317001756/http://msdn.microsoft.com/en-us/beginner/hh182234.aspx|archive-date=March 17, 2014|url-status=dead|title=Small Basic|website=[[Microsoft Developer Network]]|access-date=June 19, 2017}}</ref> इसने [[ बेसिक-256 |बेसिक-256]] जैसी समान परियोजनाओं को भी प्रेरित किया।<ref>{{cite web| url = https://basic256.org/| title = BASIC-256 homepage}}</ref> डार्टमाउथ कॉलेज ने 1 मई 2014 को बेसिक के लिए 50वीं वर्षगांठ समारोह आयोजित किया,<ref>{{Cite news|url=http://www.unionleader.com/apps/pbcs.dll/article?AID=/20140429/NEWS04/140429054|title=Dartmouth plans celebration for 50th anniversary of BASIC computer language|newspaper=[[New Hampshire Union Leader]]|date=April 28, 2014|access-date=June 14, 2017}}</ref> अन्य संगठनों की तरह; VBA प्रोग्रामर्स के कम से कम एक संगठन ने 1999 में 35वीं वर्षगांठ का आयोजन किया।<ref>{{Cite web|url=https://www.google.com/search?q=50th+anniversary+of+BASIC|title=50th anniversary of BASIC – Google Search|website=[[Google]]}}</ref>                                                                                                                                                                                                                   डार्टमाउथ कॉलेज ने कार्यक्रम के दिन 30अप्रैल 2014 को बेसिक भाषा की 50वीं वर्षगांठ मनाई<ref>{{Cite web|url=https://www.dartmouth.edu/basicfifty/events.html|title=BASIC at 50 – Event Schedule|publisher=[[Dartmouth College]]|language=en|access-date=June 14, 2017}}</ref> इस आयोजन के लिए एक लघु वृत्तचित्र फिल्म का निर्माण किया गया था।<ref>{{Cite web|url=https://www.dartmouth.edu/basicfifty/|title=BASIC at 50|publisher=[[Dartmouth College]]|language=en|access-date=June 14, 2017}}</ref>
डार्टमाउथ कॉलेज ने कार्यक्रमों के एक दिन के साथ बेसिक भाषा की 50वीं वर्षगांठ मनाई<ref>{{Cite web|url=https://www.dartmouth.edu/basicfifty/events.html|title=BASIC at 50 – Event Schedule|publisher=[[Dartmouth College]]|language=en|access-date=June 14, 2017}}</ref> 30 अप्रैल 2014 को। इस आयोजन के लिए एक लघु वृत्तचित्र फिल्म का निर्माण किया गया था।<ref>{{Cite web|url=https://www.dartmouth.edu/basicfifty/|title=BASIC at 50|publisher=[[Dartmouth College]]|language=en|access-date=June 14, 2017}}</ref>
== सिंटैक्स ==
== सिंटैक्स ==


Line 120: Line 117:


==== डेटा हेरफेर ====
==== डेटा हेरफेर ====
; <code>LET</code> : एक वेरिएबल के लिए एक मान (जो एक [[ अभिव्यक्ति (प्रोग्रामिंग) ]] का परिणाम हो सकता है) असाइन करता है। बेसिक की अधिकांश बोलियों में, <code>LET</code> वैकल्पिक है, और कोई अन्य पहचान योग्य कीवर्ड वाली पंक्ति कीवर्ड को मान लेगी <code>LET</code>.
; <code>LET</code> : एक वेरिएबल के लिए एक मान (जो एक [[ अभिव्यक्ति (प्रोग्रामिंग) |अभिव्यक्ति (प्रोग्रामिंग)]] का परिणाम हो सकता है) असाइन करता है। बेसिक की अधिकांश बोलियों में, <code>LET</code> वैकल्पिक है, और कोई अन्य पहचान योग्य कीवर्ड वाली पंक्ति कीवर्ड को मान लेगी <code>LET</code>.
; <code>DATA</code> : उन मानों की एक सूची रखता है जो क्रमिक रूप से READ कमांड का उपयोग करके असाइन किए जाते हैं।
; <code>DATA</code> : उन मानों की एक सूची रखता है जो क्रमिक रूप से READ कमांड का उपयोग करके असाइन किए जाते हैं।
; <code>READ</code> : a . से एक मान पढ़ता है <code>DATA</code> कथन और इसे एक चर के लिए असाइन करता है। एक आंतरिक सूचक अंतिम का ट्रैक रखता है <code>DATA</code> तत्व जो पढ़ा गया था और इसे प्रत्येक के साथ एक स्थान आगे ले जाता है <code>READ</code>. अधिकांश बोलियाँ एक ही संचालनमें कई मानों को पढ़ते हुए, कई चर को मापदंडों के रूप में अनुमति देती हैं।
; <code>READ</code> : a से एक मान पढ़ता है <code>DATA</code> कथन और इसे एक चर के लिए असाइन करता है। एक आंतरिक सूचक अंतिम का ट्रैक रखता है <code>DATA</code> तत्व जो पढ़ा गया था और इसे प्रत्येक के साथ एक स्थान आगे ले जाता है <code>READ</code>. अधिकांश बोलियाँ एक ही संचालनमें कई मानों को पढ़ते हुए, कई चर को मापदंडों के रूप में अनुमति देती हैं।
; <code>RESTORE</code> : आंतरिक पॉइंटर को पहले पर रीसेट करता है <code>DATA</code> बयान, कार्यक्रम शुरू करने की इजाजत देता है <code>READ</code>पहले मूल्य से आईएनजी। कई बोलियाँ एक वैकल्पिक लाइन नंबर या क्रमिक मान की अनुमति देती हैं ताकि पॉइंटर को किसी चयनित स्थान पर रीसेट किया जा सके।
; <code>RESTORE</code> : आंतरिक पॉइंटर को पहले पर रीसेट करता है <code>DATA</code> बयान, कार्यक्रम शुरू करने की इजाजत देता है <code>READ</code>पहले मूल्य से आईएनजी। कई बोलियाँ एक वैकल्पिक लाइन नंबर या क्रमिक मान की अनुमति देती हैं ताकि पॉइंटर को किसी चयनित स्थान पर रीसेट किया जा सके।
; <code>DIM</code> : एक सरणी सेट करता है।
; <code>DIM</code> : एक सरणी सेट करता है।
Line 133: Line 130:
; <code>[[Goto|GOTO]]</code> : प्रोग्राम में किसी क्रमांकित या लेबल वाली लाइन पर जाता है। अधिकांश बोलियों ने भी फॉर्म की अनुमति दी {{code|GO TO}}.
; <code>[[Goto|GOTO]]</code> : प्रोग्राम में किसी क्रमांकित या लेबल वाली लाइन पर जाता है। अधिकांश बोलियों ने भी फॉर्म की अनुमति दी {{code|GO TO}}.
; <code>GOSUB ... RETURN</code> : एक क्रमांकित या लेबल वाली रेखा पर कूदता है, वहां मिलने वाले कोड को तब तक निष्पादित करता है जब तक वह a . तक नहीं पहुंच जाता <code>RETURN</code> आदेश, जिस पर वह निम्नलिखित कथन पर वापस कूदता है <code>GOSUB</code>, या तो एक बृहदान्त्र के बाद, या अगली पंक्ति पर। इसका उपयोग सबरूटीन्स को लागू करने के लिए किया जाता है।
; <code>GOSUB ... RETURN</code> : एक क्रमांकित या लेबल वाली रेखा पर कूदता है, वहां मिलने वाले कोड को तब तक निष्पादित करता है जब तक वह a . तक नहीं पहुंच जाता <code>RETURN</code> आदेश, जिस पर वह निम्नलिखित कथन पर वापस कूदता है <code>GOSUB</code>, या तो एक बृहदान्त्र के बाद, या अगली पंक्ति पर। इसका उपयोग सबरूटीन्स को लागू करने के लिए किया जाता है।
; <code>ON ... GOTO/GOSUB</code> : चुनता है कि निर्दिष्ट शर्तों के आधार पर कहां कूदना है। अन्य रूपों के लिए [[ स्विच स्टेटमेंट ]] देखें।
; <code>ON ... GOTO/GOSUB</code> : चुनता है कि निर्दिष्ट शर्तों के आधार पर कहां कूदना है। अन्य रूपों के लिए [[ स्विच स्टेटमेंट |स्विच स्टेटमेंट]] देखें।
; <code>DEF FN</code> : कार्यों को परिभाषित करने के लिए 1960 के दशक की शुरुआत में खोजशब्दों की एक जोड़ी पेश की गई। मूल बुनियादी कार्यों को फोरट्रान सिंगल-लाइन फ़ंक्शंस पर तैयार किया गया था। बेसिक फंक्शन सबरूटीन्स के बजाय वैरिएबल तर्कों के साथ एक एक्सप्रेशन थे, जिसमें के मॉडल पर सिंटैक्स होता था <code>DEF FND(x) = x*x</code> एक कार्यक्रम की शुरुआत में। फ़ंक्शन नाम मूल रूप से एफएन, प्लस वन अक्षर, यानी एफएनए, एफएनबी तक सीमित थे ...
; <code>DEF FN</code> : कार्यों को परिभाषित करने के लिए 1960 के दशक की शुरुआत में खोजशब्दों की एक जोड़ी पेश की गई। मूल बुनियादी कार्यों को फोरट्रान सिंगल-लाइन फ़ंक्शंस पर तैयार किया गया था। बेसिक फंक्शन सबरूटीन्स के बजाय वैरिएबल तर्कों के साथ एक एक्सप्रेशन थे, जिसमें के मॉडल पर सिंटैक्स होता था <code>DEF FND(x) = x*x</code> एक कार्यक्रम की शुरुआत में। फ़ंक्शन नाम मूल रूप से FN, प्लस वन अक्षर, यानी FNA, FNB तक सीमित थे ...


==== इनपुट और आउटपुट ====
==== इनपुट और आउटपुट ====
Line 145: Line 142:
==== गणितीय कार्य ====
==== गणितीय कार्य ====
; <code>ABS</code> : निरपेक्ष मूल्य
; <code>ABS</code> : निरपेक्ष मूल्य
; <code>ATN</code> : आर्कटिक ([[ कांति ]] में परिणाम)
; <code>ATN</code> : आर्कटिक ([[ कांति |कांति]] में परिणाम)
; <code>COS</code> : कोसाइन (रेडियन में तर्क)
; <code>COS</code> : कोसाइन (रेडियन में तर्क)
; <code>EXP</code> : घातांक प्रकार्य
; <code>EXP</code> : घातांक प्रकार्य
; <code>INT</code> : पूर्णांक भाग (आमतौर पर [[ मंजिल समारोह ]])
; <code>INT</code> : पूर्णांक भाग (आमतौर पर [[ मंजिल समारोह |मंजिल समारोह]])
; <code>LOG</code> : प्राकृतिक
; <code>LOG</code> : प्राकृतिक
; <code>RND</code> : [[ यादृच्छिक संख्या पीढ़ी ]]
; <code>RND</code> : [[ यादृच्छिक संख्या पीढ़ी |यादृच्छिक संख्या पीढ़ी]]
; <code>SIN</code> : साइन (रेडियन में तर्क)
; <code>SIN</code> : साइन (रेडियन में तर्क)
; <code>SQR</code> : वर्गमूल
; <code>SQR</code> : वर्गमूल
Line 157: Line 154:
==== विविध ====
==== विविध ====
; <code>REM</code> : एक प्रोग्रामर की टिप्पणी या REMark रखता है; अक्सर कार्यक्रम को एक शीर्षक देने और कोड के किसी दिए गए अनुभाग के उद्देश्य की पहचान करने में मदद करने के लिए उपयोग किया जाता है।
; <code>REM</code> : एक प्रोग्रामर की टिप्पणी या REMark रखता है; अक्सर कार्यक्रम को एक शीर्षक देने और कोड के किसी दिए गए अनुभाग के उद्देश्य की पहचान करने में मदद करने के लिए उपयोग किया जाता है।
; <code>USR</code> : प्रोग्राम नियंत्रण को [[ मशीन कोड | उपकरणनों कोड]] सबरूटीन में स्थानांतरित करता है, जिसे आमतौर पर अल्फ़ान्यूमेरिक [[ स्ट्रिंग (कंप्यूटर विज्ञान) ]] के रूप में या डेटा स्टेटमेंट की सूची में दर्ज किया जाता है।
; <code>USR</code> : प्रोग्राम नियंत्रण को [[ मशीन कोड |उपकरणनों कोड]] सबरूटीन में स्थानांतरित करता है, जिसे आमतौर पर अल्फ़ान्यूमेरिक [[ स्ट्रिंग (कंप्यूटर विज्ञान) |स्ट्रिंग (कंप्यूटर विज्ञान)]] के रूप में या डेटा स्टेटमेंट की सूची में दर्ज किया जाता है।
; <code>CALL</code> : का वैकल्पिक रूप <code>USR</code> कुछ बोलियों में मिलता है। के फ़ंक्शन-जैसे सिंटैक्स को पूरा करने के लिए कृत्रिम पैरामीटर की आवश्यकता नहीं है <code>USR</code>, और स्मृति में विभिन्न रूटीनों को कॉल करने की स्पष्ट रूप से परिभाषित विधि है।
; <code>CALL</code> : का वैकल्पिक रूप <code>USR</code> कुछ बोलियों में मिलता है। K फ़ंक्शन-जैसे सिंटैक्स को पूरा करने के लिए कृत्रिम पैरामीटर की आवश्यकता नहीं है <code>USR</code>, और स्मृति में विभिन्न रूटीनों को कॉल करने की स्पष्ट रूप से परिभाषित विधि है।
; <code>TRON</code> /  <code>TROFF</code>: चलने पर प्रत्येक पंक्ति संख्या का प्रदर्शन चालू करता है ( TRace ON )। यह किसी प्रोग्राम में [[ डिबगिंग ]] या समस्याओं को ठीक करने के लिए उपयोगी था। TROFF इसे फिर से बंद कर देता है।
; <code>TRON</code> /  <code>TROFF</code>: चलने पर प्रत्येक पंक्ति संख्या का प्रदर्शन चालू करता है (TRace ON)। यह किसी प्रोग्राम में [[ डिबगिंग |डिबगिंग]] या समस्याओं को ठीक करने के लिए उपयोगी था। TROFF इसे फिर से बंद कर देता है।
; <code>ASM</code> : कुछ कंपाइलर जैसे फ्रीबेसिक,<ref>{{Cite web|url=http://www.freebasic.net/wiki/wikka.php?wakka=KeyPgAsm|title=KeyPgAsm|website=FreeBasic Wiki|access-date=August 2, 2017}}</ref> शुद्ध मूल,<ref>{{Cite web|url=https://www.purebasic.com/documentation/reference/inlinedasm.html|title=Inline x86 ASM|website=Pure Basic|access-date=August 2, 2017}}</ref> और पावरबेसिक<ref>{{Cite web|url=https://www.powerbasic.com/help/pbcc/using_assembly-language_in_your_code.htm|title=Using assembly-language in your code|website=Power Basic|access-date=August 2, 2017|archive-url=https://web.archive.org/web/20170802164032/https://www.powerbasic.com/help/pbcc/using_assembly-language_in_your_code.htm|archive-date=August 2, 2017|url-status=dead}}</ref> [[ इनलाइन असेंबलर ]] भाषा का भी समर्थन करता है, प्रोग्रामर को उच्च-स्तरीय और निम्न-स्तरीय कोड को इंटरमिक्स करने की इजाजत देता है, आमतौर पर एएसएम या ! बयान।
; <code>ASM</code> : कुछ कंपाइलर जैसे फ्रीबेसिक,<ref>{{Cite web|url=http://www.freebasic.net/wiki/wikka.php?wakka=KeyPgAsm|title=KeyPgAsm|website=FreeBasic Wiki|access-date=August 2, 2017}}</ref> शुद्ध मूल,<ref>{{Cite web|url=https://www.purebasic.com/documentation/reference/inlinedasm.html|title=Inline x86 ASM|website=Pure Basic|access-date=August 2, 2017}}</ref> और पावरबेसिक<ref>{{Cite web|url=https://www.powerbasic.com/help/pbcc/using_assembly-language_in_your_code.htm|title=Using assembly-language in your code|website=Power Basic|access-date=August 2, 2017|archive-url=https://web.archive.org/web/20170802164032/https://www.powerbasic.com/help/pbcc/using_assembly-language_in_your_code.htm|archive-date=August 2, 2017|url-status=dead}}</ref> [[ इनलाइन असेंबलर |इनलाइन असेंबलर]] भाषा का भी समर्थन करता है, प्रोग्रामर को उच्च-स्तरीय और निम्न-स्तरीय कोड को इंटरमिक्स करने की इजाजत देता है, आमतौर पर ASM या ! बयान।


=== डेटा प्रकार और चर ===
=== डेटा प्रकार और चर ===
बेसिक के न्यूनतम संस्करणों में केवल पूर्णांक चर और एक- या दो-अक्षर चर नाम थे, जो सीमित और महंगी मेमोरी (रैम) की आवश्यकताओं को कम करते थे। अधिक शक्तिशाली संस्करणों में फ़्लोटिंग-पॉइंट अंकगणित था, और चर को छह या अधिक वर्णों के नाम के साथ लेबल किया जा सकता था। प्रारंभिक कार्यान्वयन में कुछ समस्याएं और प्रतिबंध थे; उदाहरण के लिए, Applesoft बेसिक ने चर नामों को कई वर्णों के लंबे होने की अनुमति दी, लेकिन केवल पहले दो ही महत्वपूर्ण थे, इस प्रकार अनजाने में चर LOSS और LOAN के साथ एक प्रोग्राम लिखना संभव था, जिसे समान माना जाएगा; LOAN के लिए एक मान निर्दिष्ट करना चुपचाप LOSS के रूप में इच्छित मान को अधिलेखित कर देगा। बहुत से प्रारंभिक बेसिकs में खोजशब्दों का प्रयोग चरों में नहीं किया जा सका; SCORE की व्याख्या SC OR E के रूप में की जाएगी, जहां OR एक कीवर्ड था। स्ट्रिंग (कंप्यूटर विज्ञान) चर आमतौर पर कई माइक्रो कंप्यूटर बोलियों में [[ सिगिल (कंप्यूटर प्रोग्रामिंग) ]] के रूप में उनके नाम से प्रत्ययित होते हैं, और मूल्यों को अक्सर दोहरे उद्धरण चिह्नों द्वारा सीमांकित करके स्ट्रिंग के रूप में पहचाना जाता है। बेसिक में Arrays में पूर्णांक, फ्लोटिंग पॉइंट या स्ट्रिंग वेरिएबल हो सकते हैं।
बेसिक के न्यूनतम संस्करणों में केवल पूर्णांक चर और एक या दो अक्षर चर नाम थे, जो सीमित और महंगी मेमोरी (रैम) की आवश्यकताओं को कम करते थे। अधिक शक्तिशाली संस्करणों में फ़्लोटिंग-पॉइंट अंकगणित था, और चर को छह या अधिक वर्णों के नाम के साथ लेबल किया जा सकता था। प्रारंभिक कार्यान्वयन में कुछ समस्याएं और प्रतिबंध थे; उदाहरण के लिए, एपलसॉफ्ट बेसिक ने चर नामों को कई वर्णों के लंबे होने की अनुमति दी, लेकिन केवल पहले दो ही महत्वपूर्ण थे, इस प्रकार अनजाने में चर LOSS और LOAN के साथ एक प्रोग्राम लिखना संभव था, जिसे समान माना जाएगा; LOAN के लिए एक मान निर्दिष्ट करना चुपचाप LOSS के रूप में इच्छित मान को अधिलेखित कर देगा। बहुत से प्रारंभिक बेसिक s में खोजशब्दों का प्रयोग चरों में नहीं किया जा सका; SCORE की व्याख्या SC OR E के रूप में की जाएगी, जहां OR एक कीवर्ड था। स्ट्रिंग (कंप्यूटर विज्ञान) चर आमतौर पर कई माइक्रो कंप्यूटर बोलियों में [[ सिगिल (कंप्यूटर प्रोग्रामिंग) |सिगिल (कंप्यूटर प्रोग्रामिंग)]] के रूप में उनके नाम से प्रत्ययित होते हैं, और मूल्यों को अक्सर दोहरे उद्धरण चिह्नों द्वारा सीमांकित करके स्ट्रिंग के रूप में पहचाना जाता है। बेसिक सरणियों में पूर्णांक, फ्लोटिंग पॉइंट या स्ट्रिंग वेरिएबल हो सकते हैं।


बेसिक समर्थित मैट्रिक्स (गणित) की कुछ बोलियाँ, जिनका उपयोग एक साथ रैखिक बीजीय समीकरणों के सेट को हल करने के लिए किया जा सकता है। ये बोलियाँ सीधे मैट्रिक्स संचालन जैसे असाइनमेंट, जोड़, गुणन (संगत मैट्रिक्स प्रकार के), और एक निर्धारक के मूल्यांकन का समर्थन करेंगी। कई माइक्रो कंप्यूटर बेसिक्स ने इस डेटा प्रकार का समर्थन नहीं किया; मैट्रिक्स संचालन अभी भी संभव था, लेकिन सरणी तत्वों पर स्पष्ट रूप से प्रोग्राम किया जाना था।
बेसिक समर्थित मैट्रिक्स (गणित) की कुछ बोलियाँ, जिनका उपयोग एक साथ रैखिक बीजीय समीकरणों के सेट को हल करने के लिए किया जा सकता है। ये बोलियाँ सीधे मैट्रिक्स संचालन जैसे असाइनमेंट, जोड़, गुणन (संगत मैट्रिक्स प्रकार के), और एक निर्धारक के मूल्यांकन का समर्थन करेंगी। कई माइक्रो कंप्यूटर बेसिक्स ने इस डेटा प्रकार का समर्थन नहीं किया; मैट्रिक्स संचालन अभी भी संभव था, लेकिन सरणी तत्वों पर स्पष्ट रूप से प्रोग्राम किया जाना था।


=== उदाहरण ===
=== उदाहरण ===
[[File:ARROW (Listing) (3300726999).png|thumb|बेसिक . में लागू किया गया एक सरल खेल]]
[[File:ARROW (Listing) (3300726999).png|thumb|बेसिक में लागू किया गया एक सरल खेल]]


==== असंरचित बुनियादी ====
==== असंरचित बुनियादी ====
Line 226: Line 223:
मूल डार्टमाउथ बेसिक एक मैट्रिक्स कीवर्ड, MAT होने में असामान्य था।{{efn|From version 3 onwards.}} हालांकि अधिकांश बाद के माइक्रोप्रोसेसर डेरिवेटिव द्वारा लागू नहीं किया गया है, इसका उपयोग इस उदाहरण में 1968 के मैनुअल से किया गया है<ref>{{Cite book|url=http://bitsavers.trailing-edge.com/pdf/dartmouth/BASIC_4th_Edition_Jan68.pdf|title=Basic: a manual for BASIC, the elementary algebraic language designed for use with the Dartmouth Time Sharing System|last1=Kemeny|first1=John G.|last2=Kurtz|first2=Thomas E.|date=January 1968|publisher=Dartmouth College Computation Center|location=Hanover, N.H.|language=en|edition=4th|page=53}}</ref> जो इनपुट की संख्या का औसत है:
मूल डार्टमाउथ बेसिक एक मैट्रिक्स कीवर्ड, MAT होने में असामान्य था।{{efn|From version 3 onwards.}} हालांकि अधिकांश बाद के माइक्रोप्रोसेसर डेरिवेटिव द्वारा लागू नहीं किया गया है, इसका उपयोग इस उदाहरण में 1968 के मैनुअल से किया गया है<ref>{{Cite book|url=http://bitsavers.trailing-edge.com/pdf/dartmouth/BASIC_4th_Edition_Jan68.pdf|title=Basic: a manual for BASIC, the elementary algebraic language designed for use with the Dartmouth Time Sharing System|last1=Kemeny|first1=John G.|last2=Kurtz|first2=Thomas E.|date=January 1968|publisher=Dartmouth College Computation Center|location=Hanover, N.H.|language=en|edition=4th|page=53}}</ref> जो इनपुट की संख्या का औसत है:


<nowiki><syntaxhighlight lang= gwबेसिक ></nowiki>
<nowiki><syntaxhighlight lang= gwबेसिक ></nowiki>                                                                                                                                                                                                                                 5 चलो S= 0                                                                                                                                                                                                                                                                         10 मैट इनपुट V                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  20 लेट N= NUM                                                                                                                                                                                                                                                                                             30 अगर N= 0 तो 99                                                                                                                                                                                                                                                                     40 के लिए I = 1 से N                                                                                                                                                                                                                                                   45 LET S= S+ V(I)                                                                                                                                                                                                                                         50 अगला मैं                                                                                                                                                                                                                                                                                     60 प्रिंट S/N                                                                                                                                                                                                                                                                                  70 5 पर जाएं                                                                                                                                                                                                                                                                                       99 END                                                                                                                                                                                                                                                                             </वाक्यविन्यास हाइलाइट>
5 चलो एस = 0
10 मैट इनपुट वी
20 लेट एन = NUM
30 अगर एन = 0 तो 99
40 के लिए I = 1 से N
45 एलईटी एस = एस + वी (आई)
50 अगला मैं
60 प्रिंट एस/एन
70 5 . पर जाएं
99 END
</वाक्यविन्यास हाइलाइट>


==== संरचित बुनियादी ====
==== संरचित बुनियादी ====
दूसरी पीढ़ी के बेसिक्स (उदाहरण के लिए, ओपनवीएमएस के लिए वीएसआई बेसिक, [[ सुपरबेसिक ]], ट्रू बेसिक, क्विकबेसिक, बीबीसी बेसिक, [[ ऑपरेटिंग सिस्टम चुनें ]], पॉवरबेसिक, [[ लिबर्टी बेसिक ]] और (यकीनन) [[ COMAL ]]) ने भाषा में कई विशेषताएं पेश कीं, जो मुख्य रूप से संरचित से संबंधित हैं। और प्रक्रिया-उन्मुख प्रोग्रामिंग। आमतौर पर, [[ लाइन नंबर ]]िंग को भाषा से हटा दिया जाता है और आसान और अधिक लचीले डिज़ाइन को प्रोत्साहित करने के लिए [[ लेबल (कंप्यूटर विज्ञान) ]] ([[ GOTO ]] के लिए) और सबरूटीन के साथ बदल दिया जाता है।<ref name="GBvsQB">{{cite web|url=http://support.microsoft.com/kb/73084|title=Differences Between GW-BASIC and QBasic|date=2003-05-12|access-date=2008-06-28|archive-url=https://web.archive.org/web/20131019181140/http://support.microsoft.com/kb/73084|archive-date=2013-10-19}}</ref> इसके अलावा, स्थानीय चर के साथ पुनरावृत्ति, चयन और प्रक्रियाओं का समर्थन करने के लिए खोजशब्दों और संरचनाओं को पेश किया गया था।
दूसरी पीढ़ी के बेसिक्स (उदाहरण के लिए, ओपन VMS के लिए VSI बेसिक, [[ सुपरबेसिक |सुपरबेसिक]], ट्रू बेसिक, क्विकबेसिक, BBC बेसिक, [[ ऑपरेटिंग सिस्टम चुनें |ऑपरेटिंग सिस्टम चुनें]], पॉवरबेसिक, [[ लिबर्टी बेसिक |लिबर्टी बेसिक]] और [[ COMAL |COMAL]] ने भाषा में कई विशेषताएं पेश कीं, जो मुख्य रूप से संरचित से संबंधित हैं। आमतौर पर, [[ लाइन नंबर |लाइन नंबर]]िंग को भाषा से हटा दिया जाता है और आसान और अधिक लचीले डिज़ाइन को प्रोत्साहित करने के लिए [[ लेबल (कंप्यूटर विज्ञान) |लेबल (कंप्यूटर विज्ञान)]] ([[ GOTO |GOTO]] के लिए) और सबरूटीन के साथ बदल दिया जाता है।<ref name="GBvsQB">{{cite web|url=http://support.microsoft.com/kb/73084|title=Differences Between GW-BASIC and QBasic|date=2003-05-12|access-date=2008-06-28|archive-url=https://web.archive.org/web/20131019181140/http://support.microsoft.com/kb/73084|archive-date=2013-10-19}}</ref> इसके अलावा, स्थानीय चर के साथ पुनरावृत्ति, चयन और प्रक्रियाओं का समर्थन करने के लिए खोजशब्दों और संरचनाओं को पेश किया गया था।


माइक्रोसॉफ्टQuickबेसिक में निम्न उदाहरण है:
माइक्रोसॉफ्टQuickबेसिक में निम्न उदाहरण है:


<वाक्यविन्यास हाइलाइट लैंग= Qबेसिक >
<वाक्यविन्यास हाइलाइट लैंग= Qबेसिक >                                                                                                                                                                                                                                     रेम क्विकबेसिक उदाहरण
रेम क्विकबेसिक उदाहरण


REM फॉरवर्ड डिक्लेरेशन - मुख्य कोड को कॉल करने की अनुमति देता है a
REM फॉरवर्ड डिक्लेरेशन - a मुख्य कोड को कॉल करने की अनुमति देता है                                                                                                                                                                                           REM सबरूटीन जिसे बाद में सोर्स कोड में परिभाषित किया गया है
REM सबरूटीन जिसे बाद में सोर्स कोड में परिभाषित किया गया है
डिक्लेयर सब प्रिंटसमस्टार्स (स्टारकाउंट!)
डिक्लेयर सब प्रिंटसमस्टार्स (स्टारकाउंट!)


REM मुख्य कार्यक्रम इस प्रकार है
REM मुख्य कार्यक्रम इस प्रकार है                                                                                                                                                                                                                                 इनपुट आपका नाम क्या है:उपयोगकर्ता नाम$                                                                                                                                                                                                                                         प्रिंट हैलो; उपयोगकर्ता नाम$                                                                                                                                                                                                                                                 करना
इनपुट आपका नाम क्या है: , उपयोगकर्ता नाम$
प्रिंट हैलो; उपयोगकर्ता नाम$
करना
   इनपुट आपको कितने सितारे चाहिए: , NumStars
   इनपुट आपको कितने सितारे चाहिए: , NumStars
   कॉल PrintSomeStars(NumStars)
   कॉल PrintSomeStars(NumStars)
   करना
   करना
      इनपुट क्या आप और सितारे चाहते हैं? , उत्तर $
  इनपुट क्या आप और सितारे चाहते हैं? , उत्तर $
   उत्तर $ <> . तक लूप
   उत्तर $ <> . तक लूप
   उत्तर $ = बाएँ $ (उत्तर $, 1)
   उत्तर $ = बाएँ $ (उत्तर $, 1)
लूप जबकि UCASE$(उत्तर$) = Y
लूप जबकि UCASE$(उत्तर$) = Y                                                                                                                                                                                                                                           प्रिंट अलविदा; उपयोगकर्ता नाम$                                                                                                                    
प्रिंट अलविदा; उपयोगकर्ता नाम$
समाप्त


REM सबरूटीन परिभाषा
REM सबरूटीन परिभाषा                                                                                                                                                                                                                                                             उप प्रिंटसमस्टार (स्टारकाउंट)
उप प्रिंटसमस्टार (स्टारकाउंट)
   REM यह प्रक्रिया एक स्थानीय चर का उपयोग करती है जिसे Stars$ . कहा जाता है
   REM यह प्रक्रिया एक स्थानीय चर का उपयोग करती है जिसे Stars$ . कहा जाता है
   सितारे$ = STRING$ (स्टारकाउंट, *)
   सितारे$ = STRING$ (स्टारकाउंट, *)
   प्रिंट सितारे$
   प्रिंट सितारे$
अंत उप
अंत उप                                                                                                                                                                                                                                                                                 </वाक्यविन्यास हाइलाइट>
</वाक्यविन्यास हाइलाइट>


==== वस्तु उन्मुख बुनियादी ====
==== वस्तु उन्मुख बुनियादी ====
विजुअल बेसिक (क्लासिक), Xojo, Gambas, [[ StarOffice Basic | StarOffice बेसिक]] , [[ BlitzMax ]] और Pureबेसिक जैसी तीसरी पीढ़ी की बेसिक बोलियों ने ऑब्जेक्ट-ओरिएंटेड और इवेंट-संचालित प्रोग्रामिंग प्रतिमान का समर्थन करने के लिए सुविधाएँ पेश कीं। अधिकांश अंतर्निहित प्रक्रियाओं और कार्यों को अब ऑपरेटरों के बजाय मानक वस्तुओं के तरीकों के रूप में दर्शाया जाता है। साथ ही, [[ ऑपरेटिंग सिस्टम ]] बेसिक भाषा के लिए तेजी से सुलभ हो गया।
विजुअल बेसिक (क्लासिक), Xojo, Gambas, [[ StarOffice Basic |Star Office बेसिक]], [[ BlitzMax |Blitz Max]] और Pure बेसिक जैसी तीसरी पीढ़ी की बेसिक बोलियों ने ऑब्जेक्ट-ओरिएंटेड और इवेंट-संचालित प्रोग्रामिंग प्रतिमान का समर्थन करने के लिए सुविधाएँ पेश कीं। अधिकांश अंतर्निहित प्रक्रियाओं और कार्यों को अब ऑपरेटरों के बजाय मानक वस्तुओं के तरीकों के रूप में दर्शाया जाता है। साथ ही, [[ ऑपरेटिंग सिस्टम |ऑपरेटिंग सिस्टम]] बेसिक भाषा के लिए तेजी से सुलभ हो गया।


निम्न उदाहरण Visual बेसिक .NET में है:
निम्न उदाहरण विजुअल बेसिक .NET में है:


<!-- needs a better (event-driven?) example -->
<!-- needs a better (event-driven?) example -->
<वाक्यविन्यास हाइलाइट लैंग = वीबीनेट>
<वाक्यविन्यास हाइलाइट लैंग = VB नेट>                                                                                                                                                                                                                 सार्वजनिक मॉड्यूल सितारे कार्यक्रम
सार्वजनिक मॉड्यूल सितारे कार्यक्रम
निजी फ़ंक्शन पूछें (स्ट्रिंग के रूप में शीघ्र) स्ट्रिंग के रूप में
  निजी फ़ंक्शन पूछें (स्ट्रिंग के रूप में शीघ्र) स्ट्रिंग के रूप में
कंसोल। लिखें (शीघ्र)
      कंसोल। लिखें (शीघ्र)
वापसी कंसोल। रीडलाइन ()
      वापसी कंसोल। रीडलाइन ()
अंत समारोह
  अंत समारोह


  सार्वजनिक उप मुख्य ()
सार्वजनिक उप मुख्य ()
      मंद उपयोगकर्ता नाम = पूछें (आपका नाम क्या है:)
मंद उपयोगकर्ता नाम = पूछें (आपका नाम क्या है:)
      कंसोल.राइटलाइन (नमस्कार {0}, उपयोगकर्ता नाम)
कंसोल.राइटलाइन (नमस्कार {0}, उपयोगकर्ता नाम)


      मंद उत्तर स्ट्रिंग के रूप में
मंद उत्तर स्ट्रिंग के रूप में


      करना
करना
        Dim numStars = CInt (पूछें (आपको कितने सितारे चाहिए:))
Dim numStars = CInt (पूछें (आपको कितने सितारे चाहिए:))
        नई स्ट्रिंग के रूप में मंद तारे (* c, numStars)
नई स्ट्रिंग के रूप में मंद तारे (* c, numStars)
        कंसोल। राइटलाइन (सितारे)
कंसोल। राइटलाइन (सितारे)


        करना
करना
            उत्तर = पूछें (क्या आप और सितारे चाहते हैं?)
उत्तर = पूछें (क्या आप और सितारे चाहते हैं?)
        उत्तर तक लूप <>
उत्तर तक लूप <>
      उत्तर देते समय लूप। स्टार्ट्सविथ (Y, StringComparison.OrdinalIgnoreCase)
उत्तर देते समय लूप। स्टार्ट्सविथ (Y, StringComparison.OrdinalIgnoreCase)


      कंसोल.राइटलाइन (अलविदा {0}, उपयोगकर्ता नाम)
कंसोल.राइटलाइन (अलविदा {0}, उपयोगकर्ता नाम)
  अंत उप
अंत उप
अंत मॉड्यूल
अंत मॉड्यूल
</वाक्यविन्यास हाइलाइट>
</वाक्यविन्यास हाइलाइट>


== मानक ==
== मानक ==
* न्यूनतम बुनियादी के लिए एएनएसआई/आईएसओ/आईईसी मानक:
* न्यूनतम बुनियादी के लिए ANSI/ISO/IEC मानक:
** एएनएसआई X3.60-1978 न्यूनतम बुनियादी के लिए
**ANSI X3.60-1978 न्यूनतम बुनियादी के लिए
** आईएसओ/आईईसी 6373:1984 डाटा प्रोसेसिंग—प्रोग्रामिंग भाषाएं—मिनिमल बेसिक
** ISO/IEC 6373:1984 डाटा प्रोसेसिंग—प्रोग्रामिंग भाषाएं—मिनिमल बेसिक
* [[ एक्मा इंटरनेशनल ]]-55 मिनिमल बेसिक (एनएसआई एक्स3.60-1978 के समान वापस ले लिया गया)
* [[ एक्मा इंटरनेशनल |एक्मा इंटरनेशन]]-55 मिनिमल बेसिक (NSI X-1978 के समान वापस ले लिया गया)
* पूर्ण बुनियादी के लिए एएनएसआई/आईएसओ/आईईसी मानक:
* पूर्ण बुनियादी के लिए ANSI/ISO/IEC मानक:
** एएनएसआई X3.113-1987 प्रोग्रामिंग भाषाएं पूर्ण बुनियादी
** ANSI X3.113-1987 प्रोग्रामिंग भाषाएं पूर्ण बुनियादी
** INCITS/ISO/IEC 10279-1991 (R2005) सूचना प्रौद्योगिकी - प्रोग्रामिंग भाषाएँ - पूर्ण बुनियादी
** INCITS/ISO/IEC 10279-1991 (R2005) सूचना प्रौद्योगिकी - प्रोग्रामिंग भाषाएँ - पूर्ण बुनियादी
* एएनएसआई/आईएसओ/आईईसी परिशिष्ट परिभाषित मॉड्यूल:
* ANSI/ ISO/ IECपरिशिष्ट परिभाषित मॉड्यूल:
** एएनएसआई एक्स3.113 व्याख्याएं-1992 बुनियादी तकनीकी सूचना बुलेटिन # 1 एएनएसआई की व्याख्या 03.113-1987
** ANSI X व्याख्याएं-1992 बुनियादी तकनीकी सूचना बुलेटिन # 1 ANSI की व्याख्या 03.113-1987
** आईएसओ/आईईसी 10279:1991/एएमडी 1:1994 मॉड्यूल और सिंगल कैरेक्टर इनपुट एन्हांसमेंट
** ISO/ IEC10279:1991/AMD 1:1994 मॉड्यूल और सिंगल कैरेक्टर इनपुट एन्हांसमेंट
* एक्मा इंटरनेशनल-116 बेसिक (एएनएसआई एक्स3.113-1987 के समान वापस लिया गया)
* एक्मा इंटरनेशनल-116 बेसिक ( ANSI X-1987 के समान वापस लिया गया)


== कंपाइलर और दुभाषिए ==
== कंपाइलर और दुभाषिए ==

Revision as of 02:17, 22 November 2022

बेसिक
AtariBasic.png
ParadigmNon-structured, later procedural, later object-oriented
द्वारा डिज़ाइन किया गया
पहली प्रस्तुतिMay 1, 1964; 60 years ago (1964-05-01)
Major implementations
Influenced by
Influenced

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

प्रोग्राम भाषा के अलावा, केमेनी और कर्ट्ज़ ने डार्टमाउथ टाइम शेयरिंग सिस्टम (DTSS) विकसित किया, जिसने कई उपयोगकर्ताओं को दूरस्थ टर्मिनलों पर एक साथ बेसिक प्रोग्राम को संपादित करने और चलाने की अनुमति दी। यह सामान्य मॉडल 1960 के दशक के अंत और 1970 के दशक की शुरुआत में PDP-11 और डेटा जनरल नोवा जैसे मिनी कंप्यूटर सिस्टम पर बहुत लोकप्रिय हुआ। हेवलेट पैकर्ड ने संचालन की इस पद्धति के लिए एक संपूर्ण कंप्यूटर लाइन का निर्माण किया, 1960 के दशक के अंत में HP2000 श्रृंखला की शुरुआत की और 1980 के दशक में बिक्री जारी रखी। कई प्रारंभिक वीडियो गेम बेसिक के इन संस्करणों में से किसी एक में अपने इतिहास का पता लगाते हैं।

1970 के दशक के मध्य में माइक्रो कंप्यूटरों के उद्भव ने 1975 में माइक्रोसॉफ्टबेसिक सहित कई बेसिक बोलियों का विकास किया। इन उपकरणनों पर उपलब्ध छोटी मुख्य मेमोरी के कारण, अक्सर 4 KB, विभिन्न प्रकार की Tiny बेसिक बोलियाँ भी बनाई गईं। बेसिक युग के लगभग किसी भी सिस्टम के लिए उपलब्ध था, और 1970 के दशक के अंत में उभरे घरेलू कंप्यूटर सिस्टम के लिए वास्तविक प्रोग्रामिंग भाषा बन गई। इन निजी कंप्यूटर में लगभग हमेशा व्यतिक्रम रूप से एक बेसिक दुभाषिया स्थापित होता था, अक्सर उपकरणनों के फर्मवेयर में या कभी-कभी केवल पढ़ने के लिए मेमोरी कार्ट्रिज पर होता था।

1990 के दशक में बेसिक की लोकप्रियता में गिरावट आई, क्योंकि अधिक शक्तिशाली माइक्रो कंप्यूटर बाजार में आए और उन्नत सुविधाओं (जैसे पास्कल (प्रोग्रामिंग भाषा) और C (प्रोग्रामिंग भाषा)) के साथ प्रोग्रामिंग भाषाएं ऐसे कंप्यूटरों पर चलने योग्य हो गईं। 1991 में, माइक्रोसॉफ्ट ने विजुअल बेसिक (क्लासिक) जारी किया, जिसमें ग्राफिकल यूजर इंटरफेस बिल्डर के साथ बेसिक के एक अद्यतन संस्करण का संयोजन किया गया था। भाषा का यह पुन: उपयोग और VB, VBA और VB.NET के रूप में एक प्रमुख प्रोग्रामिंग भाषा बनी हुई है।[citation needed]

उत्पत्ति

जॉन जी. केमेनी डार्टमाउथ कॉलेज में गणित विभाग के अध्यक्ष थे। गणित शिक्षण में नवप्रवर्तक के रूप में उनकी प्रतिष्ठा के आधार पर, 1959 में स्कूल ने नया विभाग भवन बनाने के लिए $500,000 में अल्फ्रेड पी. स्लोअन फाउंडेशन पुरस्कार जीता।[2] थॉमस ई.कर्ट्ज़ 1956 में विभाग में शामिल हुए थे, और 1960 के दशक से केमेनी और कर्ट्ज़ पारंपरिक विज्ञान, प्रौद्योगिकी, इंजीनियरिंग और गणित के क्षेत्रों के बाहर, छात्रों के बीच प्रोग्रामिंग साक्षरता की आवश्यकता पर सहमत हुए। केमेनी ने बाद में उल्लेख किया कि हमारा दृष्टिकोण यह था कि परिसर में प्रत्येक छात्र के पास संगणक तक पहुंच होनी चाहिए, और किसी भी संकाय सदस्य को जब भी उपयुक्त हो, कक्षा में कंप्यूटर का उपयोग करने में सक्षम होना चाहिए। यह बेहद आसान था।[3] केमेनी और कर्ट्ज़ ने सरलीकृत भाषाओं, DARSIMCO (डार्टमाउथ सरलीकृत कोड) औरDOPE (डार्टमाउथ ओवरसिम्प्लीफाइड प्रोग्रामिंग एक्सपेरिमेंट) के साथ पिछले दो प्रयोग किए थे। ये भी नए वर्ग से आगे नहीं बढ़े। फोरट्रान और ALGOL का उपयोग करने वाले नए प्रयोगों का पालन किया, लेकिन कुर्तज़ ने निष्कर्ष निकाला कि ये भाषाएँ अपनी इच्छित चीज़ों के लिए बहुत मुश्किल थीं। जैसा कि कर्ट्ज़ ने उल्लेख किया है, फोरट्रान के पास कई अजीब तरह से गठित कमांड थे, विशेष रूप से एक लूप को निर्दिष्ट करने के लिए लगभग असंभव-से-याद रखने वाला सम्मेलन: DO 100, I = 1, 10, 2 क्या यह '1, 10, 2' या '1, 2, 10' है, और पंक्ति संख्या के बाद अल्पविराम की आवश्यकता है या नहीं?[3] इसके अलावा, किसी भी प्रकार की तत्काल प्रतिक्रिया की कमी एक प्रमुख समस्या थी; उस समय की मशीनें बैच प्रसंस्करण का उपयोग करती थीं और एक प्रोग्राम को पूरा करने में काफी समय लेती थीं। जब कर्टज़ MIT का दौरा कर रहे थे, जॉन मैककार्थी (कंप्यूटर वैज्ञानिक) ने सुझाव दिया कि समय-साझाकरण एक समाधान पेश करता है; एकल उपकरणअपने प्रसंस्करण समय को कई उपयोगकर्ताओं के बीच विभाजित कर सकती है, जिससे उन्हें अपने लिए एक धीमा कंप्यूटर होने का भ्रम हो जाता है।[4] छोटे कार्यक्रम कुछ ही सेकंड में परिणाम लौटा देंगे। इससे समय-साझाकरण और गैर-STEM छात्रों द्वारा विशेष रूप से उपयोग के लिए नई भाषा का उपयोग करने वाली प्रणाली में रुचि बढ़ गई।[3] केमेनी ने बेसिक का पहला संस्करण लिखा। संक्षिप्त नाम बेसिक थॉमस कुर्तज़ द्वारा एक अप्रकाशित पेपर के नाम से आता है।[5] नई भाषा फोरट्रान II पर भारी प्रतिरूपित थी; लूप और शाखाओं के लक्ष्य को इंगित करने के लिए संख्याओं का उपयोग किया गया था, और कई आदेश फोरट्रान के समान थे। हालाँकि, सिंटैक्स (प्रोग्रामिंग भाषाएँ) को जहाँ भी सुधार किया जा सकता था, बदल दिया गया था। उदाहरण के लिए, याद रखना मुश्किल DO लूप को याद रखने में बहुत आसान द्वारा बदल दिया गया था FOR I = 1 TO 10 STEP 2, और DO में प्रयुक्त लाइन नंबर को इसके बजाय इंगित किया गया था NEXT I.[lower-alpha 1] इसी तरह, गुप्त IF फोरट्रान का कथन, जिसका सिंटैक्स उस उपकरण के विशेष निर्देश से मेल खाता है जिस पर इसे मूल रूप से लिखा गया था, सरल हो गया IF I=5 THEN GOTO 100. इन परिवर्तनों ने भाषा को बहुत कम मूर्खतापूर्ण बना दिया, जबकि अभी भी एक समग्र संरचना है और मूल फोरट्रान के समान है।[3] इस परियोजना को राष्ट्रीय विज्ञान संस्था से $300,000 का अनुदान प्राप्त हुआ, जिसका उपयोग प्रसंस्करण के लिए GE-225 कंप्यूटर खरीदने के लिए किया गया था, और इनपुट और आउटपुट के लिए उपयोग किए जाने वाले टेलेटाइप मॉडल 33 तैलिप्रिंटर को संभालने के लिए एक डेटानेट-30 रीयलटाइम प्रोसेसर। एक दर्जन अंडरग्रेजुएट्स की एक टीम ने DTSS सिस्टम और बेसिक कंपाइलर दोनों को लिखते हुए लगभग एक साल तक प्रोजेक्ट पर काम किया।[3] पहला संस्करण बेसिक भाषा 1 मई 1964 को जारी किया गया था।[6][7] प्रारंभ में, बेसिक ने एक बैच भाषा के रूप में प्रारंभिक कार्यान्वयन से मैट्रिक्स (गणित) अंकगणितीय समर्थन के साथ सीधे गणितीय कार्य का समर्थन करने पर ध्यान केंद्रित किया, और वर्ण स्ट्रिंग कार्यक्षमता को 1965 तक जोड़ा गया। विश्वविद्यालय में उपयोग तेजी से विस्तारित हुआ, जिसके लिए मुख्य CPU को प्रतिस्थापित करने की आवश्यकता थी। JE-235,[3] और फिर भी बाद में GE-635 द्वारा। 1970 के दशक की शुरुआत तक डार्टमाउथ में उपकरणनों से सैकड़ों टर्मिनल जुड़े हुए थे, उनमें से कुछ दूर से थे।

भाषा के उपयोग को व्यापक बनाने के लिए, इसके डिजाइनरों ने संकलक को निःशुल्क उपलब्ध कराया। 1960 के दशक में, सॉफ्टवेयर एक प्रभार्य वस्तु बन गया; तब तक, यह बहुत महंगे कंप्यूटरों के साथ एक सेवा के रूप में बिना किसी शुल्क के प्रदान किया जाता था, जो आमतौर पर केवल पट्टे पर उपलब्ध होता था। उन्होंने इसे हनोवर, न्यू हैम्पशायर क्षेत्र के उच्च विद्यालयों में और क्षेत्रीय रूप से पूरे न्यू इंग्लैंड में टेलेटाइप मॉडल 33 और मॉडल 35 टेलीप्रिंटर टर्मिनलों पर डायल-अप फोन लाइनों के माध्यम से डार्टमाउथ से जुड़े हुए उपलब्ध कराया, और उन्होंने भाषा को बढ़ावा देने में काफी प्रयास किया। बाद के वर्षों में, जैसा कि बेसिक की अन्य बोलियाँ सामने आईं, केमेनी और कर्ट्ज़ की मूल बेसिक बोली को डार्टमाउथ बेसिक के रूप में जाना जाने लगा।

न्यू हैम्पशायर ने 2019 में उपलब्धि को मान्यता दी जब उसने पहली उपयोगकर्ता के अनुकूल प्रोग्रामिंग भाषा के निर्माण का वर्णन करते हुए हनोवर में एक राजमार्ग ऐतिहासिक मार्कर बनाया।[8]

अवधि-सहभाजन सेवाओं पर प्रसार

बेसिक का उदय अवधि-सहभाजन सिस्टम की दिशा में एक व्यापक आंदोलन के हिस्से के रूप में हुआ। 1950 के दशक के अंत में पहली बार संकल्पित, यह विचार 1960 के दशक की शुरुआत में कंप्यूटर उद्योग में इतना प्रभावी हो गया था कि इसके प्रस्तावक एक ऐसे भविष्य की बात कर रहे थे जिसमें उपयोगकर्ता "कंप्यूटर पर उसी तरह समय बिताएंगे जैसे औसत घर "उपयोगिता कंपनियों से बिजली और पानी खरीदता है।[9] डार्टमाउथ परियोजना पर काम करने के बाद, जनरल इलेक्ट्रिक ने अपना अंतर्निहित ऑपरेटिंग सिस्टम लिखा और एक ऑनलाइन अवधि-सहभाजन सिस्टम लॉन्च किया जिसे मार्क I के नाम से जाना जाता है। इसमें बेसिक को इसके प्राथमिक बिक्री बिंदुओं में से एक के रूप में दिखाया गया है। उभरते हुए क्षेत्र की अन्य कंपनियों ने भी शीघ्रता से इसका अनुसरण किया; अवधि-सहभाजन ने 1968 में सुपर बेसिक की शुरुआत की, कॉम्प्युसर्व के पास 1969 में अपने लॉन्च के समय DEC-10 पर एक संस्करण था, और 1970 के दशक की शुरुआत तक बेसिक सामान्य-उद्देश्य वाले बृहत अभिकलित्र पर काफी हद तक सार्वभौमिक था। यहां तक ​​​​कि IBM भी अंततः 1973 में VS-बेसिक की शुरुआत के साथ क्लब में शामिल हो गया।[10] हालांकि बेसिक के साथ अवधि-सहभाजन सेवाएं कुछ समय के लिए सफल रहीं, लेकिन पहले जितनी व्यापक सफलता की भविष्यवाणी की गई थी, वह नहीं होनी चाहिए थी। इसी अवधि के दौरान मिनी कंप्यूटरों के उद्भव, और विशेष रूप से 1970 के दशक के मध्य में कम लागत वाले माइक्रो कंप्यूटरों ने किसी को भी ऑनलाइन समय खरीदने के बजाय अपने स्वयं के सिस्टम को खरीदने और चलाने की अनुमति दी, जो आमतौर पर डॉलर प्रति मिनट पर बिल किया जाता था।[lower-alpha 2][11]

मिनीकंप्यूटर पर फैला

HP 2000 सिस्टम को इसके प्राथमिक कार्य के रूप में समय-साझा बेसिक चलाने के लिए डिज़ाइन किया गया था।

बेसिक, छोटे होने की अपनी प्रकृति के कारण स्वाभाविक रूप से मिनीकंप्यूटर बाजार में पोर्टिंग के लिए अनुकूल था, जो समय-साझाकरण सेवाओं के रूप में एक ही समय में उभर रहा था। इन उपकरणनों की मुख्य मेमोरी बहुत कम थी, आधुनिक शब्दावली में शायद यह 4 KB जितनी कम थी,[lower-alpha 3] और हार्ड ड्राइव जैसे उच्च-प्रदर्शन भंडारण की कमी थी जो संकलक को व्यावहारिक बनाते हैं। इन प्रणालियों पर, काम करने वाली मेमोरी की कम आवश्यकता के कारण बेसिक को सामान्य रूप से एक कंपाइलर के बजाय एक दुभाषिया के रूप में लागू किया गया था।[lower-alpha 4] विशेष रूप से महत्वपूर्ण उदाहरण HP टाइम-शेयर्ड बेसिक था, जो मूल डार्टमाउथ सिस्टम की तरह, अवधि-सहभाजन सिस्टम को लागू करने के लिए एक साथ काम करने वाले दो कंप्यूटरों का उपयोग करता था। पहली, HP 2100 श्रृंखला में लो-एंड मशीन, का उपयोग उपयोगकर्ता इनपुट को नियंत्रित करने और उनके प्रोग्राम को टेप या डिस्क पर सहेजने और लोड करने के लिए किया गया था। दूसरा, उसी अंतर्निहित उपकरणनों का एक उच्च अंत संस्करण, प्रोग्राम चलाता है और आउटपुट उत्पन्न करता है। लगभग $100,000 की लागत से, कोई ऐसे उपकरणनों का मालिक हो सकता है जो एक ही समय में 16 से 32 उपयोगकर्ताओं के बीच चलने में सक्षम हो।[12]HP 2000 के रूप में बंडल किया गया सिस्टम, अवधि-सहभाजन की पेशकश करने वाला पहला मिनी प्लेटफॉर्म था और एक तत्काल सफल सफलता थी, जिसने HP को डिजिटल उपकरण निगम और डेटा जनरल (DG) के बाद मिनीकंप्यूटर स्पेस में तीसरा सबसे बड़ा विक्रेता बनने के लिए प्रेरित किया। .[13] 1960 के दशक के मध्य से मिनीकंप्यूटर क्षेत्र में अग्रणी DEC ने शुरू में बेसिक की उपेक्षा की थी। यह RAND Corporation के साथ उनके काम के कारण था, जिन्होंने अपनी JOSS भाषा को चलाने के लिए एक PDP-6 खरीदा था, जो अवधारणात्मक रूप से बेसिक के समान थी।[14] इसने DEC को JOSS का एक छोटा, साफ-सुथरा संस्करण पेश करने के लिए प्रेरित किया, जिसे FOCAL (प्रोग्रामिंग भाषा) के रूप में जाना जाता है, जिसे उन्होंने 1960 के दशक के अंत में भारी प्रचारित किया। हालांकि, अवधि-सहभाजन सिस्टम व्यापक रूप से बेसिक की पेशकश करते हैं, और मिनीकंप्यूटर स्पेस में उनकी सभी प्रतिस्पर्धा ऐसा ही कर रही है, DEC के ग्राहक बेसिक के लिए चिल्ला रहे थे। प्रबंधन द्वारा बार-बार उनकी दलीलों को नजरअंदाज करने के बाद, डेविड एच अहल ने पीडीपी-8 के लिए एक बेसिक खरीदने के लिए बीड़ा उठाया, जो शिक्षा बाजार में एक बड़ी सफलता थी। 1970 के दशक की शुरुआत तक, FOCAL और JOSS को भुला दिया गया था और बेसिक मिनीकंप्यूटर बाजार में लगभग सार्वभौमिक हो गया था।[15] DEC RSTS/E अवधि-सहभाजन ऑपरेटिंग सिस्टम पर उपयोग के लिए अपने अद्यतन संस्करण, बेसिक-PLUS को पेश करेगा।

इस अवधि के दौरान बेसिक में कई सरल टेक्स्ट-आधारित गेम लिखे गए, विशेष रूप से माइक मेफील्ड के स्टार ट्रेक (पाठ आधारित खेल)। डेविड अहल ने इन्हें एकत्र किया, कुछ को FOCAL से पोर्ट किया गया, और उन्हें एक शैक्षिक समाचार पत्र में प्रकाशित किया जिसे उन्होंने संकलित किया था। बाद में उन्होंने इनमें से कई को पुस्तक के रूप में एकत्र किया, 101 बेसिक कंप्यूटर गेम्स, 1973 में प्रकाशित हुआ।[16] इसी अवधि के दौरान, अहल शिक्षा के उपयोग के लिए एक छोटा कंप्यूटर, एक प्रारंभिक व्यक्तिगत कंप्यूटर के निर्माण में शामिल था। जब प्रबंधन ने अवधारणा का समर्थन करने से इनकार कर दिया, तो अहल ने 1974 में मौलिक कंप्यूटर पत्रिका, क्रिएटिव कंप्यूटिंग (पत्रिका) को खोजने के लिए DEC छोड़ दिया। पुस्तक लोकप्रिय रही, और कई मौकों पर इसे फिर से प्रकाशित किया गया।[17]

विस्फोटक वृद्धि: घरेलू कंप्यूटर युग

MSX बेसिक संस्करण 3.0
ट्रेन बेसिक हर दिन! - एक रूसी स्कूल में एक पोस्टर (नीचे केंद्र) पढ़ता है (सी। 1985-1986)

1970 के दशक के मध्य में पहले माइक्रो कंप्यूटर की शुरुआत बेसिक के लिए विस्फोटक विकास की शुरुआत थी। इसका यह फायदा था कि यह युवा डिजाइनरों और कंप्यूटर के शौकीनों के लिए काफी अच्छी तरह से जाना जाता था, जिन्होंने माइक्रो कंप्यूटर में रुचि ली थी, जिनमें से कई ने मिनी या मेनफ्रेम पर बेसिक देखा था। 1975 में दिज्क्स्त्रा के प्रसिद्ध निर्णय के बावजूद, उन छात्रों को अच्छी प्रोग्रामिंग पढ़ाना व्यावहारिक रूप से असंभव है, जिनका बेसिक से पूर्व संपर्क रहा है: संभावित प्रोग्रामर के रूप में वे मानसिक रूप से पुनर्जनन की आशा से परे विकृत हैं,[18] बेसिक उन कुछ भाषाओं में से थी जो बिना प्रशिक्षण के उन लोगों द्वारा उपयोग करने योग्य उच्च स्तर की थी और दिन के माइक्रो कंप्यूटर में फिट होने के लिए पर्याप्त छोटी थी, जिससे यह प्रारंभिक माइक्रो कंप्यूटर पर वास्तविक मानक प्रोग्रामिंग भाषा बन गई।

बेसिक का पहला माइक्रो कंप्यूटर संस्करण बिल गेट्स, पॉल एलन और मोंटे डेविडॉफ द्वारा उनकी नवगठित कंपनी, माइक्रो-सॉफ्ट के लिए सह-लिखा गया था। इसे उपकरण के तुरंत बाद अल्टेयर 8800 के लिए पंच टेप प्रारूप में MITS द्वारा जारी किया गया था,[19] प्रारंभिक माइक्रो कंप्यूटरों की प्राथमिक भाषा के रूप में बेसिक को तुरंत मजबूत करना। होमब्रू कंप्यूटर क्लब के सदस्यों ने कार्यक्रम की प्रतियां प्रसारित करना शुरू कर दिया, जिससे गेट्स ने हॉबीस्ट्स को अपना खुला पत्र लिखा, सॉफ्टवेयर चोरी के इस प्रवर्तक उदाहरण के बारे में शिकायत की।

आंशिक रूप से गेट्स के पत्र के जवाब में, और आंशिक रूप से इससे भी छोटा बेसिक बनाने के लिए जो 4 KB उपकरणनों पर उपयोगी रूप से चलेगा,[lower-alpha 5] बॉब अल्ब्रेक्टो ने डेनिस एलिसन से भाषा की अपनी भिन्नता लिखने का आग्रह किया। बेसिक भाषा के लिए एक दुभाषिया (कंप्यूटर सॉफ़्टवेयर) के स्ट्रिप्ड-डाउन संस्करण को कैसे डिज़ाइन और कार्यान्वित किया जाए, यह एलीसन द्वारा 1975 में प्रकाशित पीपुल्स कंप्यूटर कंपनी न्यूज़लेटर के पहले तीन त्रैमासिक मुद्दों और डॉब में प्रकाशित स्रोत कोड के साथ कार्यान्वयन में शामिल किया गया था। डॉब का जर्नल ऑफ़ टिनी बेसिक कैलिस्थेनिक्स एंड ऑर्थोडोंटिया: रनिंग लाइट विदाउट ओवरबाइट। इसने टॉम पिटमैन और एल आई-चेन वांग के संस्करणों के साथ विशेष रूप से प्रसिद्ध होने के साथ, अतिरिक्त सुविधाओं या अन्य सुधारों के साथ टिनी बेसिक्स की एक विस्तृत विविधता का नेतृत्व किया।[20] माइक्रो-सॉफ्ट ने इस समय तक MOS 6502 के लिए अपने दुभाषिया को पोर्ट किया, जो जल्दी से 8-बिट युग के सबसे लोकप्रिय माइक्रोप्रोसेसरों में से एक बन गया। जब नए माइक्रो कंप्यूटर दिखाई देने लगे, विशेष रूप से TRS-80, कमोडोर पीईटी और ऐप्पल II की 1977 की त्रिमूर्ति, उन्होंने या तो MS कोड का एक संस्करण शामिल किया, या जल्दी से इसके साथ नए मॉडल पेश किए। 1978 तक, MS बेसिक एक वास्तविक मानक था और व्यावहारिक रूप से 1980 के दशक के हर घरेलू कंप्यूटर में इसे केवल-पढ़ने के लिए मेमोरी में शामिल किया गया था। बूट होने पर, प्रत्यक्ष मोड में एक बेसिक दुभाषिया प्रस्तुत किया गया था।

कमोडोर बिजनेस उपकरणनों में माइक्रोसॉफ्ट बेसिक पर आधारित कमोडोर बेसिक शामिल है। Apple II और TRS-80 प्रत्येक में बेसिक के दो संस्करण थे, एक छोटा परिचयात्मक संस्करण जिसे उपकरणनों के प्रारंभिक रिलीज़ के साथ पेश किया गया था और एक MS-आधारित संस्करण को प्लेटफ़ॉर्म में रुचि के रूप में पेश किया गया था। जैसे ही नई कंपनियों ने क्षेत्र में प्रवेश किया, अतिरिक्त संस्करण जोड़े गए जिन्होंने बेसिक परिवार को सूक्ष्म रूप से बदल दिया। अटारी 8-बिट परिवार का अपना अटारी बेसिक था जिसे 8 KBरॉम कार्ट्रिज पर फिट करने के लिए संशोधित किया गया था। सिंक्लेयर बेसिक को 1980 में सिनक्लेयर ZX80 के साथ पेश किया गया था, और बाद में इसे सिंक्लेयर ZX81 और सिनक्लेयर ZX स्पेक्ट्रम के लिए बढ़ा दिया गया था। BBC ने बलूत का फल कंप्यूटर लिमिटेड द्वारा विकसित BBC बेसिक को प्रकाशित किया, जिसमें कई अतिरिक्त संरचित प्रोग्रामिंग कीवर्ड और उन्नत फ़्लोटिंग-पॉइंट संचालनसुविधाएँ शामिल हैं।

इस अवधि में जैसे-जैसे बेसिक की लोकप्रियता बढ़ी, कंप्यूटर पत्रिकाओं ने वीडियो गेम, उपयोगिताओं और अन्य कार्यक्रमों के लिए बेसिक में पूर्ण स्रोत कोड प्रकाशित किया। बेसिक की सीधी प्रकृति को देखते हुए, पत्रिका से टाइप-इन प्रोग्राम और प्रोग्राम को निष्पादित करना एक साधारण मामला था। विशिष्ट कंप्यूटरों के लिए कार्यक्रमों की विशेषता वाली विभिन्न पत्रिकाएं प्रकाशित की गईं, हालांकि कुछ बुनियादी कार्यक्रमों को सार्वभौमिक माना जाता था और इन्हें बेसिक के किसी भी संस्करण (कभी-कभी मामूली अनुकूलन के साथ) चलाने वाली उपकरणनों में इस्तेमाल किया जा सकता था। टाइप-इन प्रोग्राम की कई किताबें भी उपलब्ध थीं, और विशेष रूप से, अहल ने मूल 101 बेसिक गेम्स के संस्करणों को माइक्रोसॉफ्ट बोली में परिवर्तित किया और इसे क्रिएटिव कंप्यूटिंग से बेसिक कंप्यूटर गेम्स के रूप में प्रकाशित किया। इस पुस्तक और इसके अनुक्रमों ने सैकड़ों तैयार कार्यक्रम प्रदान किए जिन्हें सुगमतासे व्यावहारिक रूप से किसी भी बेसिक-रनिंग प्लेटफॉर्म में परिवर्तित किया जा सकता है।[16][21][22] यह पुस्तक 1978 में स्टोर तक पहुंची, जैसे ही घरेलू कंप्यूटर बाजार शुरू हो रहा था, और यह पहली मिलियन-बिकने वाली कंप्यूटर पुस्तक बन गई। बाद के पैकेज, जैसे बेसिक प्रोग्राम करना सीखें में भी एक परिचयात्मक फोकस के रूप में गेमिंग होगा। व्यवसाय-केंद्रित CP/M कंप्यूटरों पर, जो जल्द ही छोटे व्यावसायिक वातावरण में व्यापक हो गए, माइक्रोसॉफ्ट बेसिक (M बेसिक) प्रमुख अनुप्रयोगों में से एक था।[23] 1978 में, डेविड लियन ने द बेसिक हैंडबुक: एन इनसाइक्लोपीडिया ऑफ द बेसिक कंप्यूटर लैंग्वेज का पहला संस्करण प्रकाशित किया, जिसमें 78 से अधिक विभिन्न कंप्यूटरों में कीवर्ड का दस्तावेजीकरण किया गया था। 1981 तक, दूसरे संस्करण ने 250 से अधिक विभिन्न कंप्यूटरों से खोजशब्दों का दस्तावेजीकरण किया, जो माइक्रो कंप्यूटर युग की विस्फोटक वृद्धि को प्रदर्शित करता है।[24]

IBM PC और कम्पैटिबल्स

जब IBM, IBM PC डिजाइन कर रहा था, तो उन्होंने मौजूदा घरेलू कंप्यूटरों के प्रतिमान का पालन किया, जिसमें एक अंतर्निहित बेसिक होना था। उन्होंने इसे माइक्रोसॉफ्ट-IBM कैसेट बेसिक से प्राप्त किया-लेकिन माइक्रोसॉफ्ट ने MS-DOS / PC DOS के लिए बेसिक के कई अन्य संस्करण भी तैयार किए जिनमें IBM डिस्क बेसिक (बेसिक D), IBM बेसिक ा (बेसिक A), GW-बेसिक (बेसिक-संगत) शामिल हैं। संस्करण जिसे IBM के ROM की आवश्यकता नहीं थी और Qबेसिक , सभी को आमतौर पर उपकरणनों के साथ बंडल किया जाता है। इसके अलावा उन्होंने पेशेवर प्रोग्रामर के उद्देश्य से माइक्रोसॉफ्ट बेसिक कंपाइलर का उत्पादन किया। टर्बो पास्कल (प्रोग्रामिंग भाषा)-प्रकाशक बोरलैंड ने 1985 में टर्बो बेसिक 1.0 प्रकाशित किया (उत्तराधिकारी संस्करण अभी भी मूल लेखक द्वारा पावरबेसिक नाम से विपणन किए जा रहे हैं)। माइक्रोसॉफ्ट ने विंडो वाले Amigaबेसिक को लिखा था जिसे प्री-एम्प्टीव मल्टीटास्किंग GUI अमिगा कंप्यूटर (1985 के अंत / 1986 की शुरुआत) के संस्करण 1.1 के साथ आपूर्ति की गई थी, हालांकि उत्पाद में असामान्य रूप से कोई माइक्रोसॉफ्ट चिह्न नहीं था।

इन बाद के बदलावों ने कई एक्सटेंशन पेश किए, जैसे कि बेहतर स्ट्रिंग हेरफेर और ग्राफिक्स समर्थन, फाइल सिस्टम तक पहुंच और अतिरिक्त डेटा प्रकार। अधिक महत्वपूर्ण संरचित प्रोग्रामिंग के लिए सुविधाएं थीं, जिसमें अतिरिक्त नियंत्रण संरचनाएं और स्थानीय चर का समर्थन करने वाले उचित उप-रूटीन शामिल थे। हालाँकि, 1980 के दशक के उत्तरार्ध तक, उपयोगकर्ता स्वयं प्रोग्रामिंग सीखने के बजाय दूसरों द्वारा लिखे गए पूर्व-निर्मित अनुप्रयोगों का तेजी से उपयोग कर रहे थे; जबकि पेशेवर प्रोग्रामर के पास अब छोटे कंप्यूटरों पर अधिक उन्नत भाषाओं की एक विस्तृत श्रृंखला उपलब्ध थी। C (प्रोग्रामिंग भाषा) और बाद में C++ पेशेवर श्रिंक रैप अनुबंध के लिए पसंद की भाषा बन गई|[25][26]

विजुअल बेसिक

1991 में, Microsoft ने विजुअल बेसिक(क्लासिक) की शुरुआत की, जो Quick बेसिक का विकासवादी विकास था। इसमें उस वस्तु उन्मुख भाषा से निर्माण शामिल थे जैसे ब्लॉक-संरचित नियंत्रण कथन, पैरामिट्रीकृत सबरूटीन्स और वैकल्पिक स्थैतिक टाइपिंग के साथ -साथ अन्य भाषाओं जैसे "साथ" और "प्रत्येक के लिए" से ऑब्जेक्ट-ओरिएंटेड निर्माण। भाषा ने अपने पूर्ववर्तियों के साथ कुछ अनुकूलता बनाए रखी, जैसे घोषणाओं के लिए डिम कीवर्ड, "गोसब"/रिटर्न स्टेटमेंट और वैकल्पिक लाइन नंबर जिनका उपयोग त्रुटियों का पता लगाने के लिए किया जा सकता है। विज़ुअल बेसिक के विकास के लिए एक महत्वपूर्ण चालक माइक्रोसॉफ्ट एक्सेल के लिए नई मैक्रो भाषा, एक स्प्रेडशीट थीकार्यक्रम। माइक्रोसॉफ्ट में कई लोगों के लिए आश्चर्य की बात है, जिन्होंने अभी भी इसे शौकियों के लिए एक भाषा के रूप में विपणन किया, वीबी संस्करण 3.0 के रिलीज होने के तुरंत बाद भाषा छोटे कस्टम व्यावसायिक अनुप्रयोगों के लिए व्यापक रूप से उपयोग में आई, जिसे व्यापक रूप से पहला अपेक्षाकृत स्थिर संस्करण माना जाता है।

जबकि कई उन्नत प्रोग्रामर अभी भी इसके उपयोग की खिल्ली उड़ाते हैं, वीबी उस समय तक छोटे व्यवसायों की जरूरतों को कुशलता से पूरा करता था, विंडोज 3.1 चलाने वाले कंप्यूटर इतने तेज हो गए थे कि कई व्यवसाय-संबंधी प्रक्रियाएं "पलक झपकते ही" पूरी की जा सकती थीं। एक "धीमी" भाषा, जब तक बड़ी मात्रा में डेटा शामिल नहीं था। कई छोटे व्यवसाय मालिकों ने पाया कि वे कुछ ही शामों में अपनी खुद की विशेष जरूरतों को पूरा करने के लिए अपने स्वयं के छोटे, फिर भी उपयोगी एप्लिकेशन बना सकते हैं। आखिरकार, VB3 के लंबे जीवनकाल के दौरान, विज़ुअल बेसिक का ज्ञान एक विपणन योग्य कार्य कौशल बन गया था। Microsoft ने 1996 में VBScript और 2001 में विजुअलBasic .NET का भी निर्माण किया । बाद वाले में अनिवार्य रूप से C# और Java के समान शक्ति है।लेकिन सिंटैक्स के साथ जो मूल मूल भाषा को दर्शाता है। आईडीई , अपने घटना-संचालित प्रोग्रामिंग जीयूआई निर्माता के साथ , अन्य उपकरणों पर भी प्रभावशाली था, विशेष रूप से ऑब्जेक्ट पास्कल लिए बोर्लैंड सॉफ्टवेयर के डेल्फी (सॉफ्टवेयर) और लाजर (आईडीई) जैसे अपने स्वयं के वंश ।[27]

मूल विज़ुअल बेसिक के अंतिम संस्करण 6.0 के लिए मुख्यधारा का समर्थन 31 मार्च, 2005 को समाप्त हो गया, इसके बाद मार्च 2008 में विस्तारित समर्थन मिला।[28] 11 मार्च, 2020 को, Microsoft ने घोषणा की कि VB.NET भाषा का विकास भी समाप्त हो गया है, हालांकि यह अभी भी समर्थित था।[29]इस बीच, ज़ोजो और गम्बास जैसे प्रतियोगी मौजूद हैं ।

तीन आधुनिक बुनियादी संस्करण: मोनो (सॉफ़्टवेयर) बेसिक, OpenOffice.org बेसिक और झींगे

1990 के बाद के संस्करण और बोलियाँ

1990 के बाद से कई अन्य बेसिक बोलियाँ भी उभरी हैं, जिनमें Q बेसिक से प्रेरित खुला स्रोत सॉफ्टवेयर, QB64 और नि: शुल्क बेसिक, और विज़ुअल बेसिक-स्टाइल तेज़ी से, बेसिक फ़ॉर Qt और गाम्बस शामिल हैं। आधुनिक वाणिज्यिक अवतारों में शुद्ध बेसिक, Power बेसिक, Xojo, Monkey X और True बेसिक(कर्टज़ द्वारा नियंत्रित कंपनी से डार्टमाउथ बेसिक का सीधा उत्तराधिकारी) शामिल हैं।

कई वेब-आधारित सरल बेसिक दुभाषिए भी मौजूद हैं, जिनमें माइक्रोसॉफ्ट का बेसिक भी शामिल है। बेसिक के कई संस्करण अब ऐप्पल ऐप स्टोर (IOS), या एंड्रॉइड के लिए गूगल प्ले स्टोर के माध्यम से स्मार्टफोन और टैबलेट के लिए भी उपलब्ध हैं। गेम कंसोल पर, निन्टेंडो 3DS और निंटेंडो D के लिए एक एप्लिकेशन जिसे छोटा कंप्यूटर कहा जाता है, DS बटन समर्थन के साथ बेसिक के थोड़े संशोधित संस्करण में प्रोग्रामिंग की अनुमति देता है। निंटेंडो स्विच के लिए एक संस्करण भी जारी किया गया है।

कैलकुलेटर

टेक्सस उपकरण, HP, कैसियो और अन्य द्वारा बनाए गए रेखांकन और अन्यथा प्रोग्राम योग्य कैलकुलेटर पर बेसिक के वेरिएंट उपलब्ध हैं।

विंडोज कमांड-लाइन

Q बेसिक, EXE फ़ाइलें बनाने के लिए लिंकर के बिना माइक्रोसॉफ्ट Q बेसिक का एक संस्करण, ऑपरेटिंग सिस्टम के विंडोज़ NT और DOS- विंडोज़ 95 स्ट्रीम में मौजूद है और इसे विंडोज़ 7 जैसे हाल के रिलीज़ के लिए प्राप्त किया जा सकता है जो उनके पास नहीं है। DOS 5 से पहले, बेसिक दुभाषिया GW-बेसिक था। Q बेसिक माइक्रोसॉफ्ट द्वारा घर और कार्यालय बिजली उपयोगकर्ता और छोटे पैमाने पर व्यावसायिक विकास के लिए जारी की गई तीन भाषाओं की एक श्रृंखला का हिस्सा है; QC और Q Pascal अन्य दो हैं। विंडोज 95 और 98 के लिए, जिसमें व्यतिक्रम रूप से Qबेसिक स्थापित नहीं है, उन्हें इंस्टॉलेशन डिस्क से कॉपी किया जा सकता है, जिसमें पुराने और वैकल्पिक सॉफ़्टवेयर के लिए निर्देशिकाओं का एक सेट होगा; अन्य लापता कमांड जैसे Exe2Bin और अन्य इन्हीं निर्देशिकाओं में हैं।

अन्य

बेसिक कुछ वीडियो गेम सिस्टम में आया, जैसे कि निंटेंडो निन्टेंडो एंटरटेनमेंट सिस्टम

विभिन्न माइक्रोसॉफ्ट, लोटस, और कोरल ऑफिस सूट और संबंधित उत्पाद विजुअल बेसिक के साथ या दूसरे रूप में प्रोग्राम करने योग्य हैं, जिसमें लोटसस्क्रिप्ट भी शामिल है, जो BBA 6 के समान है। होस्ट एक्सप्लोरर टर्मिनल एमुलेटर WWB को मैक्रो भाषा के रूप में उपयोग करता है; या हाल ही में जिस प्रोग्राम और सुइट में यह समाहित है, उसे हमिंगबर्ड बेसिक के नाम से जाने जाने वाले इन-हाउस बेसिक वेरिएंट में प्रोग्राम किया जा सकता है। वेब सामग्री, आउटलुक 97, इंटरनेट एक्सप्लोरर और विंडोज स्क्रिप्ट होस्ट प्रोग्रामिंग के लिए VB स्क्रिप्ट संस्करण का उपयोग किया जाता है। WSH में अनुप्रयोगों के लिए एक विजुअल बेसिक (VBA) इंजन भी है, जो VBScript, JScript, और कई मालिकाना या ओपन सोर्स इंजन के साथ व्यतिक्रम इंजनों के तीसरे के रूप में स्थापित है, जिसे PerlScrip, Rexx- आधारित इंजनों के एक जोड़े, Python की तरह स्थापित किया जा सकता है। रूबी, TCL, डेल्फी, XLNT, PHP, और अन्य; जिसका अर्थ है कि बेसिक के दो संस्करणों का उपयोग अन्य उल्लिखित भाषाओं के साथ-साथ लोटसस्क्रिप्ट, WSF फ़ाइल में, घटक ऑब्जेक्ट मॉडल और अन्य WSH और VBA निर्माणों के माध्यम से किया जा सकता है। VBScript उन भाषाओं में से एक है जिसे 4Dos, 4NT और टेक कमांड एन्हांस्ड शेल द्वारा एक्सेस किया जा सकता है। सैक्सबेसिक और WWB भी बेसिक कार्यान्वयन की विजुअल बेसिक लाइन के समान हैं। माइक्रोसॉफ्ट वर्ड के लिए प्री-ऑफिस 97 मैक्रो भाषा को वर्डबेसिक के रूप में जाना जाता है। एक्सेल 4 और 5 विजुअल बेसिक का ही मैक्रो भाषा के रूप में उपयोग करते हैं। चिपमंक बेसिक, 1970 के दशक के बेसिक्स के समान एक पुराने स्कूल का दुभाषिया, लिनक्स, माइक्रोसॉफ़्ट विंडोज़ और मैकओएस के लिए उपलब्ध है।

विरासत

पर्सनल कंप्यूटर पर बेसिक दुभाषियों की सर्वव्यापकता ऐसी थी कि पाठ्यपुस्तकों में एक बार सरल ट्राई इट इन बेसिक अभ्यास शामिल थे जो छात्रों को कक्षा या घरेलू कंप्यूटर पर गणितीय और कम्प्यूटेशनल अवधारणाओं के साथ प्रयोग करने के लिए प्रोत्साहित करते थे। उस समय की लोकप्रिय कंप्यूटर पत्रिकाओं में आमतौर पर टाइप-इन प्रोग्राम शामिल होते थे।

भविष्यवादी और विज्ञान-कथा लेखक डेविड ब्रिनो ने 2006 के सैलून लेख में सर्वव्यापी बेसिक के नुकसान पर शोक व्यक्त किया[30] जैसा कि अन्य लोगों ने किया है जिन्होंने इस युग के दौरान पहली बार कंप्यूटर का उपयोग किया था। बदले में, लेख ने माइक्रोसॉफ्ट को माइक्रोसॉफ्ट स्मॉल बेसिक को विकसित करने और जारी करने के लिए प्रेरित किया;[31] इसने बेसिक-256 जैसी समान परियोजनाओं को भी प्रेरित किया।[32] डार्टमाउथ कॉलेज ने 1 मई 2014 को बेसिक के लिए 50वीं वर्षगांठ समारोह आयोजित किया,[33] अन्य संगठनों की तरह; VBA प्रोग्रामर्स के कम से कम एक संगठन ने 1999 में 35वीं वर्षगांठ का आयोजन किया।[34] डार्टमाउथ कॉलेज ने कार्यक्रम के दिन 30अप्रैल 2014 को बेसिक भाषा की 50वीं वर्षगांठ मनाई[35] । इस आयोजन के लिए एक लघु वृत्तचित्र फिल्म का निर्माण किया गया था।[36]

सिंटैक्स

विशिष्ट बुनियादी कीवर्ड

डेटा हेरफेर

LET
एक वेरिएबल के लिए एक मान (जो एक अभिव्यक्ति (प्रोग्रामिंग) का परिणाम हो सकता है) असाइन करता है। बेसिक की अधिकांश बोलियों में, LET वैकल्पिक है, और कोई अन्य पहचान योग्य कीवर्ड वाली पंक्ति कीवर्ड को मान लेगी LET.
DATA
उन मानों की एक सूची रखता है जो क्रमिक रूप से READ कमांड का उपयोग करके असाइन किए जाते हैं।
READ
a से एक मान पढ़ता है DATA कथन और इसे एक चर के लिए असाइन करता है। एक आंतरिक सूचक अंतिम का ट्रैक रखता है DATA तत्व जो पढ़ा गया था और इसे प्रत्येक के साथ एक स्थान आगे ले जाता है READ. अधिकांश बोलियाँ एक ही संचालनमें कई मानों को पढ़ते हुए, कई चर को मापदंडों के रूप में अनुमति देती हैं।
RESTORE
आंतरिक पॉइंटर को पहले पर रीसेट करता है DATA बयान, कार्यक्रम शुरू करने की इजाजत देता है READपहले मूल्य से आईएनजी। कई बोलियाँ एक वैकल्पिक लाइन नंबर या क्रमिक मान की अनुमति देती हैं ताकि पॉइंटर को किसी चयनित स्थान पर रीसेट किया जा सके।
DIM
एक सरणी सेट करता है।

कार्यक्रम प्रवाह नियंत्रण

IF ... THEN ... {ELSE}
तुलना करने या निर्णय लेने के लिए उपयोग किया जाता है। प्रारंभिक बोलियों ने केवल के बाद एक पंक्ति संख्या की अनुमति दी THEN, लेकिन बाद के संस्करणों ने किसी भी मान्य कथन का अनुसरण करने की अनुमति दी। ELSE व्यापक रूप से समर्थित नहीं था, विशेष रूप से पुराने संस्करणों में।
FOR ... TO ... {STEP} ... NEXT
कोड के किसी भाग को दी गई संख्या में कई बार दोहराएं। एक वेरिएबल जो काउंटर के रूप में कार्य करता है, इंडेक्स , कंट्रोल फ्लो#लूप्स के भीतर उपलब्ध है।
WHILE ... WEND तथा REPEAT ... UNTIL
निर्दिष्ट शर्त सही होने पर कोड का एक भाग दोहराएं। लूप के प्रत्येक पुनरावृत्ति से पहले या बाद में स्थिति का मूल्यांकन किया जा सकता है। ये दोनों आदेश अधिकतर बाद की बोलियों में पाए जाते हैं।
DO ... LOOP {WHILE} या {UNTIL}
कोड के किसी भाग को अनिश्चित काल तक या निर्दिष्ट शर्त के सत्य होने तक/जब तक दोहराएं। लूप के प्रत्येक पुनरावृत्ति से पहले या बाद में स्थिति का मूल्यांकन किया जा सकता है। के समान WHILE, ये खोजशब्द अधिकतर बाद की बोलियों में पाए जाते हैं।
GOTO
प्रोग्राम में किसी क्रमांकित या लेबल वाली लाइन पर जाता है। अधिकांश बोलियों ने भी फॉर्म की अनुमति दी GO TO.
GOSUB ... RETURN
एक क्रमांकित या लेबल वाली रेखा पर कूदता है, वहां मिलने वाले कोड को तब तक निष्पादित करता है जब तक वह a . तक नहीं पहुंच जाता RETURN आदेश, जिस पर वह निम्नलिखित कथन पर वापस कूदता है GOSUB, या तो एक बृहदान्त्र के बाद, या अगली पंक्ति पर। इसका उपयोग सबरूटीन्स को लागू करने के लिए किया जाता है।
ON ... GOTO/GOSUB
चुनता है कि निर्दिष्ट शर्तों के आधार पर कहां कूदना है। अन्य रूपों के लिए स्विच स्टेटमेंट देखें।
DEF FN
कार्यों को परिभाषित करने के लिए 1960 के दशक की शुरुआत में खोजशब्दों की एक जोड़ी पेश की गई। मूल बुनियादी कार्यों को फोरट्रान सिंगल-लाइन फ़ंक्शंस पर तैयार किया गया था। बेसिक फंक्शन सबरूटीन्स के बजाय वैरिएबल तर्कों के साथ एक एक्सप्रेशन थे, जिसमें के मॉडल पर सिंटैक्स होता था DEF FND(x) = x*x एक कार्यक्रम की शुरुआत में। फ़ंक्शन नाम मूल रूप से FN, प्लस वन अक्षर, यानी FNA, FNB तक सीमित थे ...

इनपुट और आउटपुट

LIST
वर्तमान कार्यक्रम का पूर्ण स्रोत कोड प्रदर्शित करता है।
PRINT
स्क्रीन या अन्य आउटपुट डिवाइस पर एक संदेश प्रदर्शित करता है।
INPUT
उपयोगकर्ता को एक चर का मान दर्ज करने के लिए कहता है। बयान में एक त्वरित संदेश शामिल हो सकता है।
TAB
साथ उपयोग करना PRINT उस स्थिति को सेट करने के लिए जहां अगला वर्ण स्क्रीन पर दिखाया जाएगा या कागज पर मुद्रित किया जाएगा। AT एक वैकल्पिक रूप है।
SPC
कई स्पेस कैरेक्टर प्रिंट करता है। अवधारणा में समान TAB लेकिन एक निर्दिष्ट कॉलम में जाने के बजाय वर्तमान कॉलम से कई अतिरिक्त रिक्त स्थान से चलता है।

गणितीय कार्य

ABS
निरपेक्ष मूल्य
ATN
आर्कटिक (कांति में परिणाम)
COS
कोसाइन (रेडियन में तर्क)
EXP
घातांक प्रकार्य
INT
पूर्णांक भाग (आमतौर पर मंजिल समारोह)
LOG
प्राकृतिक
RND
यादृच्छिक संख्या पीढ़ी
SIN
साइन (रेडियन में तर्क)
SQR
वर्गमूल
TAN
स्पर्शरेखा (रेडियन में तर्क)

विविध

REM
एक प्रोग्रामर की टिप्पणी या REMark रखता है; अक्सर कार्यक्रम को एक शीर्षक देने और कोड के किसी दिए गए अनुभाग के उद्देश्य की पहचान करने में मदद करने के लिए उपयोग किया जाता है।
USR
प्रोग्राम नियंत्रण को उपकरणनों कोड सबरूटीन में स्थानांतरित करता है, जिसे आमतौर पर अल्फ़ान्यूमेरिक स्ट्रिंग (कंप्यूटर विज्ञान) के रूप में या डेटा स्टेटमेंट की सूची में दर्ज किया जाता है।
CALL
का वैकल्पिक रूप USR कुछ बोलियों में मिलता है। K फ़ंक्शन-जैसे सिंटैक्स को पूरा करने के लिए कृत्रिम पैरामीटर की आवश्यकता नहीं है USR, और स्मृति में विभिन्न रूटीनों को कॉल करने की स्पष्ट रूप से परिभाषित विधि है।
TRON / TROFF
चलने पर प्रत्येक पंक्ति संख्या का प्रदर्शन चालू करता है (TRace ON)। यह किसी प्रोग्राम में डिबगिंग या समस्याओं को ठीक करने के लिए उपयोगी था। TROFF इसे फिर से बंद कर देता है।
ASM
कुछ कंपाइलर जैसे फ्रीबेसिक,[37] शुद्ध मूल,[38] और पावरबेसिक[39] इनलाइन असेंबलर भाषा का भी समर्थन करता है, प्रोग्रामर को उच्च-स्तरीय और निम्न-स्तरीय कोड को इंटरमिक्स करने की इजाजत देता है, आमतौर पर ASM या ! बयान।

डेटा प्रकार और चर

बेसिक के न्यूनतम संस्करणों में केवल पूर्णांक चर और एक या दो अक्षर चर नाम थे, जो सीमित और महंगी मेमोरी (रैम) की आवश्यकताओं को कम करते थे। अधिक शक्तिशाली संस्करणों में फ़्लोटिंग-पॉइंट अंकगणित था, और चर को छह या अधिक वर्णों के नाम के साथ लेबल किया जा सकता था। प्रारंभिक कार्यान्वयन में कुछ समस्याएं और प्रतिबंध थे; उदाहरण के लिए, एपलसॉफ्ट बेसिक ने चर नामों को कई वर्णों के लंबे होने की अनुमति दी, लेकिन केवल पहले दो ही महत्वपूर्ण थे, इस प्रकार अनजाने में चर LOSS और LOAN के साथ एक प्रोग्राम लिखना संभव था, जिसे समान माना जाएगा; LOAN के लिए एक मान निर्दिष्ट करना चुपचाप LOSS के रूप में इच्छित मान को अधिलेखित कर देगा। बहुत से प्रारंभिक बेसिक s में खोजशब्दों का प्रयोग चरों में नहीं किया जा सका; SCORE की व्याख्या SC OR E के रूप में की जाएगी, जहां OR एक कीवर्ड था। स्ट्रिंग (कंप्यूटर विज्ञान) चर आमतौर पर कई माइक्रो कंप्यूटर बोलियों में सिगिल (कंप्यूटर प्रोग्रामिंग) के रूप में उनके नाम से प्रत्ययित होते हैं, और मूल्यों को अक्सर दोहरे उद्धरण चिह्नों द्वारा सीमांकित करके स्ट्रिंग के रूप में पहचाना जाता है। बेसिक सरणियों में पूर्णांक, फ्लोटिंग पॉइंट या स्ट्रिंग वेरिएबल हो सकते हैं।

बेसिक समर्थित मैट्रिक्स (गणित) की कुछ बोलियाँ, जिनका उपयोग एक साथ रैखिक बीजीय समीकरणों के सेट को हल करने के लिए किया जा सकता है। ये बोलियाँ सीधे मैट्रिक्स संचालन जैसे असाइनमेंट, जोड़, गुणन (संगत मैट्रिक्स प्रकार के), और एक निर्धारक के मूल्यांकन का समर्थन करेंगी। कई माइक्रो कंप्यूटर बेसिक्स ने इस डेटा प्रकार का समर्थन नहीं किया; मैट्रिक्स संचालन अभी भी संभव था, लेकिन सरणी तत्वों पर स्पष्ट रूप से प्रोग्राम किया जाना था।

उदाहरण

बेसिक में लागू किया गया एक सरल खेल

असंरचित बुनियादी

होम कंप्यूटर पर नए बेसिक प्रोग्रामर एक साधारण प्रोग्राम से शुरू हो सकते हैं, शायद स्क्रीन पर संदेश प्रदर्शित करने के लिए भाषा के PRINT स्टेटमेंट का उपयोग करते हुए; एक प्रसिद्ध और अक्सर दोहराया जाने वाला उदाहरण सी प्रोग्रामिंग भाषा हैलो, वर्ल्ड है! कार्यक्रम:

<syntaxhighlight lang= gwबेसिक > 10 प्रिंट हैलो, दुनिया! 20 END </वाक्यविन्यास हाइलाइट>

संदेश के साथ प्रदर्शन को भरने के लिए एक अनंत लूप का उपयोग किया जा सकता है:

<syntaxhighlight lang= gwबेसिक > 10 प्रिंट हैलो, दुनिया! 20 गोटो 10 </वाक्यविन्यास हाइलाइट>

ध्यान दें कि END कथन वैकल्पिक है और बेसिक की अधिकांश बोलियों में कोई क्रिया नहीं है। इसे हमेशा शामिल नहीं किया गया था, जैसा कि इस उदाहरण में है। समान प्रोग्राम का उपयोग करके निश्चित संख्या में संदेशों को प्रिंट करने के लिए इसी प्रोग्राम को संशोधित किया जा सकता है FOR...NEXT बयान:

<syntaxhighlight lang= gwबेसिक > 10 चलो एन = 10 20 I=1 से N . के लिए 30 प्रिंट नमस्ते, विश्व! 40 अगला मैं </वाक्यविन्यास हाइलाइट>

अधिकांश पहली पीढ़ी के बेसिक संस्करण, जैसे MSX बेसिक और GW-बेसिक, ने सरल डेटा प्रकार, लूप चक्र और सरणियों का समर्थन किया। निम्नलिखित उदाहरण GW-बेसिक के लिए लिखा गया है, लेकिन न्यूनतम परिवर्तनों के साथ बेसिक के अधिकांश संस्करणों में काम करेगा:

<syntaxhighlight lang= gwबेसिक > 10 इनपुट आपका नाम क्या है: ; यू$ 20 प्रिंट हैलो; यू$ 30 इनपुट आपको कितने सितारे चाहिए: ; एन 40 एस$ = 50 के लिए I = 1 से N 60 एस$ = एस$ + * 70 अगला मैं 80 प्रिंट एस$ 90 इनपुट क्या आप और सितारे चाहते हैं? ; ए$ 100 अगर लेन (ए $) = 0 तो गोटो 90 110 ए$ = बायां$(ए$, 1) 120 IF A$ = Y या A$ = y तो GOTO 30 130 प्रिंट अलविदा; यू$ 140 END </वाक्यविन्यास हाइलाइट> परिणामी संवाद सदृश हो सकता है:

आपका नाम क्या है: माइक
हैलो माइक
आपको कितने सितारे चाहिए: 7
*******
क्या आप और सितारे चाहते हैं? हां
आपको कितने सितारे चाहिए: 3
***
क्या आप और सितारे चाहते हैं? नहीं
अलविदा माइक

मूल डार्टमाउथ बेसिक एक मैट्रिक्स कीवर्ड, MAT होने में असामान्य था।[lower-alpha 6] हालांकि अधिकांश बाद के माइक्रोप्रोसेसर डेरिवेटिव द्वारा लागू नहीं किया गया है, इसका उपयोग इस उदाहरण में 1968 के मैनुअल से किया गया है[40] जो इनपुट की संख्या का औसत है:

<syntaxhighlight lang= gwबेसिक > 5 चलो S= 0 10 मैट इनपुट V 20 लेट N= NUM 30 अगर N= 0 तो 99 40 के लिए I = 1 से N 45 LET S= S+ V(I) 50 अगला मैं 60 प्रिंट S/N 70 5 पर जाएं 99 END </वाक्यविन्यास हाइलाइट>

संरचित बुनियादी

दूसरी पीढ़ी के बेसिक्स (उदाहरण के लिए, ओपन VMS के लिए VSI बेसिक, सुपरबेसिक, ट्रू बेसिक, क्विकबेसिक, BBC बेसिक, ऑपरेटिंग सिस्टम चुनें, पॉवरबेसिक, लिबर्टी बेसिक और COMAL ने भाषा में कई विशेषताएं पेश कीं, जो मुख्य रूप से संरचित से संबंधित हैं। आमतौर पर, लाइन नंबरिंग को भाषा से हटा दिया जाता है और आसान और अधिक लचीले डिज़ाइन को प्रोत्साहित करने के लिए लेबल (कंप्यूटर विज्ञान) (GOTO के लिए) और सबरूटीन के साथ बदल दिया जाता है।[41] इसके अलावा, स्थानीय चर के साथ पुनरावृत्ति, चयन और प्रक्रियाओं का समर्थन करने के लिए खोजशब्दों और संरचनाओं को पेश किया गया था।

माइक्रोसॉफ्टQuickबेसिक में निम्न उदाहरण है:

<वाक्यविन्यास हाइलाइट लैंग= Qबेसिक > रेम क्विकबेसिक उदाहरण

REM फॉरवर्ड डिक्लेरेशन - a मुख्य कोड को कॉल करने की अनुमति देता है REM सबरूटीन जिसे बाद में सोर्स कोड में परिभाषित किया गया है डिक्लेयर सब प्रिंटसमस्टार्स (स्टारकाउंट!)

REM मुख्य कार्यक्रम इस प्रकार है इनपुट आपका नाम क्या है:उपयोगकर्ता नाम$ प्रिंट हैलो; उपयोगकर्ता नाम$ करना

  इनपुट आपको कितने सितारे चाहिए: , NumStars
  कॉल PrintSomeStars(NumStars)
  करना
  इनपुट क्या आप और सितारे चाहते हैं? , उत्तर $
  उत्तर $ <> . तक लूप
  उत्तर $ = बाएँ $ (उत्तर $, 1)

लूप जबकि UCASE$(उत्तर$) = Y प्रिंट अलविदा; उपयोगकर्ता नाम$

REM सबरूटीन परिभाषा उप प्रिंटसमस्टार (स्टारकाउंट)

  REM यह प्रक्रिया एक स्थानीय चर का उपयोग करती है जिसे Stars$ . कहा जाता है
  सितारे$ = STRING$ (स्टारकाउंट, *)
  प्रिंट सितारे$

अंत उप </वाक्यविन्यास हाइलाइट>

वस्तु उन्मुख बुनियादी

विजुअल बेसिक (क्लासिक), Xojo, Gambas, Star Office बेसिक, Blitz Max और Pure बेसिक जैसी तीसरी पीढ़ी की बेसिक बोलियों ने ऑब्जेक्ट-ओरिएंटेड और इवेंट-संचालित प्रोग्रामिंग प्रतिमान का समर्थन करने के लिए सुविधाएँ पेश कीं। अधिकांश अंतर्निहित प्रक्रियाओं और कार्यों को अब ऑपरेटरों के बजाय मानक वस्तुओं के तरीकों के रूप में दर्शाया जाता है। साथ ही, ऑपरेटिंग सिस्टम बेसिक भाषा के लिए तेजी से सुलभ हो गया।

निम्न उदाहरण विजुअल बेसिक .NET में है:

<वाक्यविन्यास हाइलाइट लैंग = VB नेट> सार्वजनिक मॉड्यूल सितारे कार्यक्रम

निजी फ़ंक्शन पूछें (स्ट्रिंग के रूप में शीघ्र) स्ट्रिंग के रूप में
कंसोल। लिखें (शीघ्र)
वापसी कंसोल। रीडलाइन ()
अंत समारोह
सार्वजनिक उप मुख्य ()
मंद उपयोगकर्ता नाम = पूछें (आपका नाम क्या है:)
कंसोल.राइटलाइन (नमस्कार {0}, उपयोगकर्ता नाम)
मंद उत्तर स्ट्रिंग के रूप में
करना
Dim numStars = CInt (पूछें (आपको कितने सितारे चाहिए:))
नई स्ट्रिंग के रूप में मंद तारे (* c, numStars)
कंसोल। राइटलाइन (सितारे)
करना
उत्तर = पूछें (क्या आप और सितारे चाहते हैं?)
उत्तर तक लूप <>
उत्तर देते समय लूप। स्टार्ट्सविथ (Y, StringComparison.OrdinalIgnoreCase)
कंसोल.राइटलाइन (अलविदा {0}, उपयोगकर्ता नाम)
अंत उप

अंत मॉड्यूल </वाक्यविन्यास हाइलाइट>

मानक

  • न्यूनतम बुनियादी के लिए ANSI/ISO/IEC मानक:
    • ANSI X3.60-1978 न्यूनतम बुनियादी के लिए
    • ISO/IEC 6373:1984 डाटा प्रोसेसिंग—प्रोग्रामिंग भाषाएं—मिनिमल बेसिक
  • एक्मा इंटरनेशन-55 मिनिमल बेसिक (NSI X-1978 के समान वापस ले लिया गया)
  • पूर्ण बुनियादी के लिए ANSI/ISO/IEC मानक:
    • ANSI X3.113-1987 प्रोग्रामिंग भाषाएं पूर्ण बुनियादी
    • INCITS/ISO/IEC 10279-1991 (R2005) सूचना प्रौद्योगिकी - प्रोग्रामिंग भाषाएँ - पूर्ण बुनियादी
  • ANSI/ ISO/ IECपरिशिष्ट परिभाषित मॉड्यूल:
    • ANSI X व्याख्याएं-1992 बुनियादी तकनीकी सूचना बुलेटिन # 1 ANSI की व्याख्या 03.113-1987
    • ISO/ IEC10279:1991/AMD 1:1994 मॉड्यूल और सिंगल कैरेक्टर इनपुट एन्हांसमेंट
  • एक्मा इंटरनेशनल-116 बेसिक ( ANSI X-1987 के समान वापस लिया गया)

कंपाइलर और दुभाषिए

Page 'List of compilers' not found
Page 'List of compilers' not found

यह भी देखें

टिप्पणियाँ

  1. Fortran's DO had a continue for this purpose, but still required the line number to be entered.
  2. Tymshare charged about US$10 per hour (equivalent to $70 in 2021) for accessing their systems.
  3. Widely regarded as the first "true" mini, the PDP-8's 12-bit memory space allowed 4,096 address of 12-bits each, or 6,144 bytes.
  4. Interpreters are ultimately similar to compilers in the tasks they perform, converting source code to machine code, but differ in when they perform it. Compilers convert the entire program at once and output a separate runnable program. Interpreters generally convert only a single line at a time (or even just a portion of it) and then immediately release that code once the line has completed running. This means they require only enough memory to run a single line, and do not require some form of high-performance secondary memory like a hard drive.
  5. Microsoft BASIC left 780 bytes free for user program code and variable values on a 4K machine, and that was running a cut-down version lacking string variables and other functionality.
  6. From version 3 onwards.


संदर्भ

  1. Kemeny, John G.; Kurtz, Thomas E. (1964). Basic: a manual for BASIC, the elementary algebraic language designed for use with the Dartmouth Time Sharing System (PDF) (in English) (1st ed.). Hanover, N.H.: Dartmouth College Computation Center.
  2. "High Math at Hanover". Time. February 23, 1959.
  3. 3.0 3.1 3.2 3.3 3.4 3.5 Time 2014.
  4. Rankin, Joy Lisi (2018), A People's History of Computing in the United States, Cambridge, Massachusetts: Harvard University Press, ISBN 9780674970977, p. 23
  5. "BASIC". Jargon File. Retrieved June 13, 2017.
  6. "Thomas E. Kurtz – History of Computer Programming Languages". cis-alumni.org (in English). Retrieved June 13, 2017.
  7. Alfred, Randy (January 5, 2008). "May 1, 1964: First Basic Program Runs". Wired. Retrieved June 13, 2017.
  8. Brooks, David (11 June 2019). "Finally, a historical marker that talks about something important". Concord Monitor. Archived from the original on 11 June 2019. Retrieved 11 August 2019.
  9. Bauer, W. F., Computer design from the programmer's viewpoint Archived July 23, 2016, at the Wayback Machine (Eastern Joint Computer Conference, December 1958) One of the first descriptions of computer time-sharing.
  10. "IBM VS the World: That's How It Is". Computerworld. December 5, 1973.
  11. Bourne, Charles; Hahn, Trudi Bellardo (August 2003). A History of Online Information Services, 1963–1976. p. 387. ISBN 9780262261753.
  12. "2000 Timeshare System".
  13. "Passing the 10-year mark". MEASURE Magazine. Hewlett Packard. October 1976.
  14. Marks, Shirley (December 1971). The JOSS Years: Reflections on an experiment (PDF) (Technical report). Rand.
  15. Savetz, Kevin (April 2013). "Dave Ahl and Betsy Ah" (Interview).
  16. 16.0 16.1 Ahl, David H. (1973). 101 Basic computer games (in English). Morristown, N.J.: Creative Computing Press. OCLC 896774158.
  17. Ahl, David H. (May 11, 1981). "Computer Games". InfoWorld. Vol. 3, no. 9. p. 44. ISSN 0199-6649.
  18. Dijkstra, Edsger W. (June 18, 1975). "How do we tell truths that might hurt" (PDF). Selected Writings on Computing: A Personal Perspective. Springer-Verlag (published 1982). pp. 129–131. ISBN 978-0387906522. OCLC 693424350.
  19. "We have a BASIC". New Mexico Museum of Natural History and Science. Archived from the original on November 30, 2012. Retrieved April 18, 2007.
  20. Pittman, Tom. "you had to pay $5 up front to get it…". www.ittybittycomputers.com. Retrieved June 14, 2017.
  21. Ahl, David H. (1979). More basic computer games (in English). Morristown: Creative Computing Press. ISBN 978-0894801372. OCLC 839377789.
  22. Ahl, David H. (1984). Big computer games (in English). Morris Plains, N.J.: Creative Computing Press. ISBN 978-0916688400. OCLC 872675092.
  23. "Osborne 1". oldcomputers.net. Retrieved June 14, 2017.
  24. Lien, David (1981). The BASIC Handbook (Second ed.). San Diego, CA: Compusoft Publishing. p. inside cover. ISBN 0-932760-00-7.
  25. Pravin, Jain (2011). The Class Of Java (in English). Pearson Education India. ISBN 9788131755440.
  26. "GNE: the C programming language". fysh.org. Retrieved June 14, 2017. During the 1980s, C compilers spread widely, and C became an extremely popular language.
  27. "25 years of Delphi and no Oracle in sight: Not a Visual Basic killer but hard to kill".
  28. "Product Family Life Cycle Guidelines for Visual Basic 6.0". Msdn2.microsoft.com. March 31, 2005. Retrieved June 16, 2009.
  29. "Visual Basic support planned for .NET 5.0". March 11, 2020.
  30. Brin, David (September 14, 2006). "Why Johnny Can't Code". Salon. Archived from the original on September 18, 2013. Retrieved June 19, 2017.
  31. "Small Basic". Microsoft Developer Network. Archived from the original on March 17, 2014. Retrieved June 19, 2017.
  32. "BASIC-256 homepage".
  33. "Dartmouth plans celebration for 50th anniversary of BASIC computer language". New Hampshire Union Leader. April 28, 2014. Retrieved June 14, 2017.
  34. "50th anniversary of BASIC – Google Search". Google.
  35. "BASIC at 50 – Event Schedule" (in English). Dartmouth College. Retrieved June 14, 2017.
  36. "BASIC at 50" (in English). Dartmouth College. Retrieved June 14, 2017.
  37. "KeyPgAsm". FreeBasic Wiki. Retrieved August 2, 2017.
  38. "Inline x86 ASM". Pure Basic. Retrieved August 2, 2017.
  39. "Using assembly-language in your code". Power Basic. Archived from the original on August 2, 2017. Retrieved August 2, 2017.
  40. Kemeny, John G.; Kurtz, Thomas E. (January 1968). Basic: a manual for BASIC, the elementary algebraic language designed for use with the Dartmouth Time Sharing System (PDF) (in English) (4th ed.). Hanover, N.H.: Dartmouth College Computation Center. p. 53.
  41. "Differences Between GW-BASIC and QBasic". May 12, 2003. Archived from the original on October 19, 2013. Retrieved June 28, 2008.



इस पृष्ठ में अनुपलब्ध आंतरिक कड़ियों की सूची

  • उच्च स्तरीय प्रोग्रामिंग भाषा
  • सी (प्रोग्रामिंग भाषा)
  • सामान्य प्रयोजन प्रोग्रामिंग भाषा
  • मुख्य स्मृति
  • बुनियादी दुभाषिया
  • रीड ऑनली मैमोरी
  • समय बताना
  • जॉन मैकार्थी (कंप्यूटर वैज्ञानिक)
  • साथ
  • परिवर्णी शब्द
  • सिंटैक्स (प्रोग्रामिंग भाषाएं)
  • डेटा सामान्य
  • फोकल (प्रोग्रामिंग भाषा)
  • स्टार ट्रेक (पाठ खेल)
  • निजी कंप्यूटर
  • शौक़ीन लोगों के लिए खुला पत्र
  • दुभाषिया (कंप्यूटर सॉफ्टवेयर)
  • जेडएक्स स्पेक्ट्रम
  • रीड ऑनली मैमोरी
  • सबरूटीन
  • छोटा व्यवसाय
  • जावा (प्रोग्रामिंग भाषा)
  • जीयूआई निर्माता
  • समन्वित विकास पर्यावरण
  • मोनो (सॉफ्टवेयर)
  • माइक्रोसॉफ्ट स्मॉल बेसिक
  • नींतेंदों 3 डी एस
  • क्यूटी के लिए बुनियादी
  • प्रोग्राम करने योग्य कैलकुलेटर
  • मैक ओएस
  • ओपन वीएमएस के लिए वीएसआई बेसिक

सामान्य संदर्भ


बाहरी संबंध