- 1964 में लॉन्च हुई एक आसान और उपयोग में सरल भाषा के रूप में BASIC ने Apple, TRS-80, IBM और Commodore PC जैसी प्रणालियों को आगे बढ़ाने में बड़ी भूमिका निभाई।
BASIC क्या है?
- पारंपरिक रूप में यह लाइन-बाय-लाइन execute होने वाली interpreter शैली की प्रोग्रामिंग भाषा थी।
- GOTO जैसे command से लाइन नंबरों के बीच jump करके शुरुआत करने वाले आसानी से loop बना सकते थे।
- आज अधिकांश भाषाएँ function या object-oriented जैसी अन्य paradigms इस्तेमाल करती हैं, लेकिन BASIC की सरल syntax और अंग्रेज़ी keywords इसे शुरुआत करने वालों के लिए लोकप्रिय और उपयोग करने में आसान बनाते थे।
BASIC तक पहुँचने की यात्रा
- BASIC से पहले Fortran, Algol और COBOL जैसी जटिल भाषाएँ मुख्यतः विशेषज्ञों के लिए उपयोग होती थीं।
- Kemeny और Kurtz का मानना था कि amateurs भी कंप्यूटर का इस्तेमाल कर सकें, इसलिए एक user-friendly भाषा की जरूरत है।
- 1956 में DARSIMSCO (Dartmouth Simplified Code), DOPE (Dartmouth Oversimplified Programming Experiment) जैसे प्रयासों के बाद 1963 में BASIC का विकास शुरू हुआ।
- Kemeny ने NSF अनुदान से GE-225 कंप्यूटर को Dartmouth College में लाया और पहला general-purpose time-sharing system बनाया।
- Kemeny, Kurtz और स्नातक स्तर के छात्रों ने मिलकर time-sharing system बनाया और Dartmouth समुदाय के सभी लोगों के लिए कंप्यूटर एक्सेस खोल दिया।
- BASIC की simplicity और ताकत के कारण इसे छात्रों और शिक्षकों में तेजी से लोकप्रियता मिल गई।
BASIC का PC में प्रवेश
- GE 225 कंप्यूटर खरीद समझौते के हिस्से के रूप में GE के लिए एक time-sharing OS भी बनाया गया था।
- इसी OS पर चलने वाले BASIC से देशभर के कॉलेजों, स्कूलों और निजी उपयोगकर्ताओं के लिए mainframe से जुड़कर programming करना संभव हो गया।
- 1975 में Paul Allen और Bill Gates ने Altair 8800 जैसे personal computers के लिए BASIC लागू करते हुए Microsoft की स्थापना की।
- 1976 में Steve Wozniak ने कम संसाधनों में Apple I के लिए BASIC interpreter सीधे बनाया।
- यह अगले ही वर्ष Apple II के लिए Integer BASIC बना और बाद में Applesoft BASIC के रूप में Apple II के पूरे life-cycle में मुख्य भूमिका निभाई।
- 1970 के दशक के आखिरी चरण और 1980 के शुरुआती वर्षों में Atari 800, TRS-80, Commodore VIC-20, C64, TI-99/4A, BBC Micro और IBM PC जैसी लोकप्रिय home computers में या तो ROM में built-in था या आसान उपलब्ध programming environment के रूप में, इसलिए BASIC की अहम भूमिका बनी रही।
- शुरुआती कंप्यूटर मैगज़ीन जैसे Compute! में लाइन-दर-लाइन इनपुट की जा सकने वाली BASIC code भी प्रकाशित की जाती थी।
आज का BASIC
- आज BASIC retro computing के शौकिया इस्तेमाल में अभी भी लोकप्रिय है, लेकिन व्यावहारिक भाषा के रूप में लगभग प्रयोग नहीं होती।
- लेकिन यह लगातार evolve होकर भी पूरी तरह समाप्त नहीं हुई है।
- अलग-अलग platforms के लिए कई BASIC dialects मौजूद हैं, लेकिन Microsoft वाला सबसे ज्यादा इस्तेमाल में है।
- GW-BASIC और QuickBasic के बाद Visual Basic, VBA और MS Small Basic आए।
- 1991 में लॉन्च हुआ Visual Basic Windows ऐप विकास में लोकप्रिय था, जबकि VBA का व्यापक उपयोग MS Office automation में हुआ।
- 2008 में लॉन्च हुआ MS Small Basic मुख्यतः शुरुआत करने वालों की programming education के लिए इस्तेमाल होता है।
- दूसरी तरफ Python या JavaScript जैसी आधुनिक भाषाएँ BASIC की भूमिका संभाल रही हैं।
- इन भाषाओं में simplicity, readability और ease of use पर जोर है, इसलिए ये entry-level programming और तेज़ ऐप विकास के लिए लोकप्रिय हैं।
GN⁺ की राय
- BASIC का यह महत्वपूर्ण पहलू था कि इसे teletype युग में लाइन नंबर के आधार पर program edit, insert और delete करने वाली शैली में बनाया गया था। इससे punch card पर संभव न होने वाले काम भी संभव हुए।
- BASIC की उपयोगिता शायद कम हो गई, फिर भी यह Visual Basic जैसे संस्करणों में evolve होकर जीवित रहा। साथ ही Python जैसी सरल syntax वाली भाषाएँ BASIC की जगह ले रही हैं; यानी BASIC का spirit जारी है।
- निजी कंप्यूटरों के शुरुआती दौर में ROM में मौजूद BASIC ने लोगों को कंप्यूटर सीखने और इस्तेमाल करने में निर्णायक भूमिका दी। लेकिन GUI वातावरण आम होते ही command line आधारित BASIC का लोकप्रिय रहना लगभग असंभव हो गया।
- आज शैक्षणिक programming language में Scratch और Python का ज्यादा उपयोग होता है। वे भी BASIC की तरह आसान और मज़ेदार तरीके से coding सिखाते हैं, लेकिन वास्तविक उपयोग में BASIC से ज्यादा powerful हैं।
4 टिप्पणियां
बचपन के बहुत पुराने दिनों की एक याद है—मैं BASIC में धुन डालकर उसे बैकग्राउंड में बजाता था और उसी पर गाना प्रैक्टिस करता था।..
मैं शायद इसलिए कि मैंने कंप्यूटर की शुरुआत GW-BASIC से की थी, मुझे BASIC के लिए कुछ नॉस्टैल्जिया महसूस होता है।
शुरुआत में जब मैंने
Forलूप सीखकर*से पिरामिड आउटपुट किया था, वह अभी भी याद है।Visual Basic का भी काफी समय तक इस्तेमाल किया था, और VBA भी मैंने एक लंबा समय तक लिखा।
असल में, भले ही कंप्यूटर से पूरी तरह परिचित न हुए हों, उसे काम करने के लिए सेट करने में सीखने के लिए शायद आज भी BASIC ठीक विकल्प है—ऐसा लगता है।
Python से शुरुआत अच्छी कही जाती है, लेकिन शायद इसलिए कि मैं उससे उतना ‘फ्रेंडली’ नहीं हूँ। हाहा
BASIC से स्टार बनाने वाले कोड की जो यादें हैं, वो फिर से ताज़ा हो गईं, हाहा.
Hacker News टिप्पणी
एक टिप्पणीकार बताते हैं कि कॉलेज के दिनों में वे होटल में नाइट-ऑडिट का काम करते थे। उन्होंने BASIC का उपयोग करके होटल रूम मैनेजमेंट सिस्टम को ऑटोमेट किया और अपनी उत्पादकता काफी बढ़ा ली। उस समय बेहतर विकल्प उपलब्ध नहीं थे, फिर भी BASIC से ही काम चल गया।
BASIC उन डिवाइसों के लिए बेहद काम का था जिनकी RAM बेहद सीमित होती थी, क्योंकि इसे मशीन कोड के मुकाबले भी प्रोग्राम स्पेस को न्यूनतम करने के लिए डिजाइन किया गया था। किसी ने बताया कि उनके पास सिर्फ 3KB RAM वाला कंप्यूटर था, और BASIC की वजह से वे एक उपयोगी प्रोग्राम बना पाए जो वरना RAM में फिट नहीं बैठता—इससे उनके नजरिए में BASIC के लिए नया सम्मान पैदा हुआ।
पुराने जर्नल/मैगज़ीनों में अक्सर ऐसे BASIC प्रोग्राम लिस्टिंग छपती थीं जिन्हें पाठक सीधे टाइप करके सेव और रन कर सकते थे। BASIC अंग्रेज़ी keywords पर ज़ोर देता था, इसलिए यह काम के लिए ठीक बैठता था। नीदरलैंड्स में BASICODE नाम का प्रयास हुआ था, जिसमें कई मशीनें इसे इंटरप्रेट कर सकें या अपने BASIC में कन्वर्ट कर सकें—ऐसा एक standard dialect बनाने की कोशिश की गई। लेट-नाइट रेडियो शो में टेप-लोडिंग साउंड भी चलाया जाता था, और श्रोता उसे रिकॉर्ड करके कन्वर्ज़न प्रोग्राम की मदद से C64, ZX Spectrum, MSX, Amstrad CPC जैसे अपने डिवाइस पर चला लेते थे।
अधिकतर लोग MS BASIC को याद करते हैं, लेकिन असली Dartmouth BASIC में शुरुआत से ही matrix primitives मौजूद थे। इसमें matrix read/write/input से लेकर inverse, transpose, identity matrix, zero matrix और constant matrix तक के फंक्शन सपोर्टेड थे। Wang 2200 BASIC, जो एक एक्सटेंडेड Dartmouth BASIC था, उसमें matrix की खोज, sorting, merging जैसी मजबूत सुविधाएँ और जोड़ी गईं। लेकिन सीमाएँ भी थीं—वेरिएबल नाम सिर्फ एक अक्षर या एक अक्षर+अंक संयोजन तक सीमित थे, GOTO/GOSUB labels सिर्फ 0 से 255 थे, और string length सिर्फ 64 कैरेक्टर तक ही थी।
BASIC का personal computing की adoption पर पड़ा प्रभाव कम करके नहीं आँका जा सकता। इसने लाखों घर के कंप्यूटरों पर programming संभव की और असंख्य करियर की शुरुआत करवाई।
एक टिप्पणीकार के लिए 11 साल की जिज्ञासु उम्र में प्रोग्रामिंग से पहली बार सामना QBASIC ने कराया। वे PRINT स्टेटमेंट का इस्तेमाल करके कागज़ व्यर्थ न करते हुए स्क्रीन पर आउटपुट लिखने का तरीका खोजने के लिए हेल्प पूरी तरह पढ़ते रहे। उन्हें कहीं लेबल इस्तेमाल करने की सलाह मिली थी, लेकिन GOTO syntax समझ में नहीं आई, इसलिए लाइन नंबर रेंज को इंडेक्स कार्ड पर लिखकर manage किया करते थे। एक बार उन्होंने O की जगह 0 लिख दिया और debugging में पूरा दिन चला गया। यह भी उन्होंने सोचा कि शायद .BAS को .EXE में बदलते ही क्लिक करके रन हो जाएगा, जो उन्हें बड़ा अजीब लगा था।
SQL आज 50 साल का भी हो गया, लेकिन अपने समय की अन्य भाषाओं की तुलना में कहीं ज्यादा व्यापक रूप से उपयोग हो रहा है।
Dartmouth से जुड़े BASIC के जन्म पर एक शानदार documentary YouTube पर उपलब्ध है। इस पर एक छोटा सा podcast episode भी बना है।
कुछ लोगों के लिए BASIC आज भी थोड़ा 'निषिद्ध/टैबू' language-सा महसूस होता है। किसी ने बचपन में Pascal से programming शुरू की थी, लेकिन टीचर ने कहा था कि खराब habits लग जाएँगी, इसलिए BASIC मत सीखो। शायद वही प्रतिबंधित टैग आकर्षक लगा—दोस्तों के साथ चोरी-छिपे सीखने में गलत लगता था लेकिन मज़ा भी आता था। इस तरह BASIC उनकी दूसरी high-level language बन गई।
'A People's History of Computing in the United States' नाम की किताब शीर्षक की तुलना में शायद थोड़ा overstatement करती है और सिर्फ Dartmouth BASIC तथा उसकी culture का इतिहास बताती है। लेकिन यह सोच बहुत रुचिकर लगी कि किसी को भी programming करने का हक़ और amateur लोगों की ऐसी culture कि वे अपनी जरूरतों के हिसाब से प्रोग्राम बना सकें। Pillsbury Dough कंपनी ने भी अजीब तरीके से, Midwest के स्कूलों को अपने बड़े मेनफ्रेम को time-sharing मॉडल पर इस्तेमाल करने देने जैसी सुविधा देकर, BASIC culture को अप्रत्याशित ढंग से फैलाया।