Nastanak i razvoj BASIC-a (I deo)

Na Univerzitetu Dartmouth, 1965. godine, dva profesora John Kemeny i Thomas Kurtz razvila su „Beginner“s All-purpose Symbolic Instruction Code“ ili skraฤ‡eno BASIC. BASIC je prvenstveno bio razvijen zbog potrebe interaktivnosti programskih jezika. Ova interaktivnost znaฤi da programeri mogu da unose komande i da odmah potom iskuse rezultate obrade. Umesto dotadaลกnje potrebe koriลกฤ‡enja kartica, studenti ova dva profesora koristili su terminale, gde su nakon unosa programskog koda izdavali naredbu „Run“, a rezultati obrade su mometalno bili ลกtampani na ลกtampaฤima. Prednost ovih instantnih rezultata je u davanju velike slobode programerima u smislu eksperimentisanja, ลกto je omoguฤ‡ilo ostvarenje novih ideja.

Kasnih sedamdesetih godina proลกlog veka, u veฤ‡im koliฤinama su prodati prvi personalni raฤunari od strane kompanija kao ลกto su Apple, Commodore i Atari, a svaki od njih imao je sopstvenu verziju BASIC interpretera smeลกtenog u RAM memoriju. Tada se pojavila mala kompanija „Microsoft“, koja je trลพiลกtu ponudila svoju verziju BASIC-a, ali ta verzija se, za razliku od prethodnih, uฤitavala u RAM memoriju raฤunara. Mnogi korisnici su se okrenuli BASIC-u jer se odlikovao jednostavnoลกฤ‡u i lako se uฤio; takoฤ‘e su provodili sate i sate vremena prekucavajuฤ‡i BASIC listinge iz magazina i knjiga.

Vremenom su programeri postajali sve razoฤareniji sporoลกฤ‡u BASIC-a, a sporost je dolazila od toga ลกto su programi interpretirani, a ne kompajlirani. To znaฤi da se svaka programska instrukcija sukcesivno prevodila i izvrลกavala, pa su rezultati jako sporo dobijani. Naravno, postojali su tu i drugi problemi. BASIC takoฤ‘e nije bio podesan i za strukturno programiranje, jer su sve varijable bile globalne, a i nije bilo moguฤ‡e izvesti i samostalne procedure i module koji su potrebni za strukturno programiranje. Sredinom osamdesetih „Microsoft“ je pokuลกao da reลกi postavljene probleme sa verzijom QuickBasic, jezikom koji je bio viลกe kompajlerski nego interpreterski. QuickBasic podrลพava sledeฤ‡e:

  • procedure – rutine za viลกestruku upotrebu unutar programa
  • module – rutine za viลกestruku upotrebu koje se ne nalaze u glavnom programu
  • korisniฤki definisane funkcije – rutine za viลกestruku upotrebu koje mogu da prihvate parametre i vrate vrednosti

Za razliku od ranijih programa koji su se izvrลกavali od poฤetka do kraja, sada se program mora „razbiti“ u funkcije, ลกto je programe ฤinilo manjim i viลกe efikasnim. Osim toga, QuickBasic je ponudio i integrisano programsko okruลพenje – ลกto znaฤi da su programeri mogli da preureฤ‘uju, kompajliraju i pokreฤ‡u programe iz istog ekrana.

Pratite Krstaricu na www.krstarica.com