Език за програмиране BASIC - SoNoty

Името на български езикBASIC е транскрипция на английското съкращение BASIC: Beginner, All-purpose Symbolic Instruction Code -- универсален код (език) на символни инструкции за начинаещи.

Историята на неговото създаване е свързана с търсенето на начини за решаване на проблема: как да научим учениците на достъпно разбиране на техниките за програмиране, как да ги научим на проста комуникация с компютър. T. Kurtz и J. Kemeny, двама служители на Darmud College, се заеха с този проблем в края на 50-те години. На първо място те разбраха, че имат нужда от компютър, който е лесен за научаване и използване и не изисква много усилия от страна на учениците. Освен това беше ясно, че учениците няма да искат да работят с перфокарти, следователно, за да комуникират с компютър, са необходими режим на споделяне на времето и интерактивен режим на работа с машина.

В допълнение, решението на този проблем беше улеснено от необходимостта от разработване на нов език за програмиране, който може лесно да се научи и лесен за използване. Използването на асемблер или езици като ALGOL или FORTRAN не можеше да се говори въз основа на предишен опит в преподаването.

През лятото на 1963 г. започва работа по чернова на BASIC, нов език. По това време група, ръководена от Т. Курц и Дж. Кемени, получи две субсидии от General Electric за решаване на проблема. Разработката на езика и операционната система е внедрена от есента на 1963 г. на компютрите на фирмата "Дженерал Електрик" - DATANET - 30, GE-225, GE-235. Първата BASIC програма, използваща система за споделяне на времето с три терминала, започва да работи през май 1964 г. (до есента на същата година системата работи с 12 терминални устройства).

Трябва да се отбележи, че BASIC е създаден не наот нулата, но на базата на съществуващите по това време алгоритмични езици. Връзката между BASIC и FORTRAN и ALGOL е очевидна. От FORTRAN се взема индикация за параметрите на цикъла: начало, край и стъпка. От ALGOL идват думите FOR и STEP и по-естествена проверка за завършване на цикъла. Някои заеми идват от езиците LOSS и CORC.

BASIC е създаден като език за интерпретиращ тип, за разлика от компилирането на FORTRAN.

Може би една от причините за създаването на BASIC от типа интерпретатор е, че повечето миникомпютри от онези години (HP 200, PDP-8, PDP-11, WANG и т.н.) използват интерпретатори.

В началото на 70-те години се появяват първите микрокомпютри. Първите две версии на езиковия интерпретатор BASIC за микрокомпютъра Altair-8800 са създадени от служителите на MITS П. Алън и Б. Гейтс през 1975 г.

На следващата година П. Алън и Б. Гейтс основават компанията Microsoft, която има огромен принос за развитието на езика и внедряването му на микрокомпютър. Първоначалните версии на езика от Microsoft през 1976 - 1978 г. доставен за компютри фирми "Commodore", "Apple", "Tandy".

Развитието на езика BASIC-A беше версията Quick BASIC, която включва подпрограми и функции с локални и глобални променливи, поддръжка на графики и звук, буквено-цифрови етикети и т.н. През 1985 г. създателите на BASIC T. Kurtz и J. Kemeny разработиха версия на езика, наречена True BASIC за IBM PC.

Microsoft също има значителен принос в разработването на софтуер за домашни компютри. През 1983 - 1985г Токийският клон на компанията разработи стандарт за 8-битови битови компютри MSX и MSX-2, произведени от редица японски компании, дисковата операционна система MSX DOS и езиковия интерпретатор MSX BASIC. Версията MSX-2 на стандарта има допълнителна графикавъзможности.

Що се отнася до стандартизацията, BASIC последва "трудния път" на FORTRAN, когато бяха направени опити за компилиране на стандартно описание след 15 дълги години на използване на различни версии. Едва през 1978 г. е приет стандартът ANSI за минимален BASIC (ANSI X3.60), който обаче не решава всички проблеми на спонтанното развитие на езика. Ето какво пише Р. Форсайт за това:

"Веднага след появата си BASIC започна да се променя: процес, подобен на еволюцията на естествените езици, започна да се извършва с него. Въпреки че една от версиите беше одобрена от комисията по стандартите и коригирана от разработчиците на преводача, езикът скоро излезе от подчинение и стана обществено достояние."

В домашните компютри се използват различни диалекти на езика BASIC. Така PC Iskra-220 използва разширена версия на езика на системата WANG-2200 B, а PC Agat използва езиков интерпретатор, идентичен с този, използван от Apple 2 PC. Версията BASIC-plus се използва в микрокомпютъра Електроника 60 и интерактивните компютърни системи ДВК-1, ДВК-2, ДВК-3. За нови образователни изчислителни системи от типа "Corvette" е разработен езиков интерпретатор BASIC, базиран на версията MBASIC. Професионални персонални компютри, като EC 1841/42, "Искра 1030.11", "Neuron N9.66", софтуерно съвместими с IBM PC, работят с горните версии на BASIC в OS SR/M-86 и MS DOS. В допълнение, няколко хиляди японски домакински компютри Yamaha MSX и Yamaha MSX-2 се използват успешно в някои образователни институции в страната, използвани като образователно компютърно оборудване (KUVT), в което програмите се изпълняват на езика MSX-BASIC.

Няма нужда да говорим за популярността на BASIC сред масовото използване на персонални компютри, дори въпрекизагуби предишната си простота - страхотно е. И докато спадът в тази популярност не се наблюдава.

През 90-те години трябва да се появят компютри от пето поколение, чийто проект беше обявен за първи път от японски учени в началото на 80-те години. Основният език за програмиране в този текущ компютърен проект е PROLOGUE. Но какво да кажем за BASIC? Любопитни съображения по този въпрос бяха изразени от Р. Форсайт:

„Ако трябва да използвате PROLOGUE, тогава изчакайте, докато бъде „погълнат“ от BASIC, този питон, който поглъща всичко по пътя си. BASIC току-що е приключил с „смилането“ на PASCAL с всичките му контролни структури. След кратка пауза и няколко оригвания, той ще може да „изяде“ PROLOGUE, така че ще видим варианти на BASIC с вградено доказване на теорема чрез резолюция. Тогава е време да помислим за възможен преход към ПРОЛОГА“.

//Компютърна техника и нейното приложение N1'90