BASIC (kratica za Beginner's All-purpose Symbolic Instruction Code - jezik za začetnike) je družina programskih jezikov, ki je bil razvit 1963. BASIC je bil zelo popularen na hišnih računalnikih v 80. letih 20. stoletja. Večina jih je imela BASIC v ROMu. Praviloma se tolmači, čeprav obstajajo tudi prevajalniki. Jezik je temeljil na FORTRANu in ALGOLu.

Zgodovina jezika

uredi

Izvorni jezik BASIC je bil kasneje imenovani Darthmouth BASIC, ki sta ga razvila študenta John Kemeny in Thomas Kurtz iz Darthmouthske univerze. Napisala sta ga z namenom da bi tako drugim študentom poenostavila pisanje programov za njihov univerzitetni strežnik.

Programski jezik se je držal osmih osnovnih načel:

  1. Jezik naj bo enostaven za začetnike
  2. Jezik naj bo splošno uporaben
  3. Jezik naj ima dodatne možnosti za napredne uporabnike
  4. Interaktivnost
  5. Interpreter za jezik naj opozarja na napake razumljivo
  6. Jezik naj bo hiter pri malih programih
  7. Za programiranje v jeziku naj ne bo potrebno znanje o računalniški strojni opremi
  8. Jezik naj uporabnika loči od mehanizmov operacijskega sistema

Jezik se je naslanjal deloma na FORTRAN 2 in ALGOL 60, z dodatki potrebnimi za uporabo na strežniku. V osnovi pa je BASIC omogočal delo z matematičnimi enačbami, kasneje pa so dodali sposobnost dela z matricami (podatkovnimi polji).

Darthmouth BASIC je bil Compiler in ne Interpreter in je dejansko bil sposoben narediti boljšo kodo za matematične operacije kot FORTRAN 2 ali ALGOL 60. Študenta sta se odločila da bo njun Darthmouth BASIC zastonj, zato da se bi čim bolj razširil.

Šele leta po tem ko se je BASIC že zelo razširil, so se pojavila strokovna mnenja da je BASIC počasen jezik in da njegova slovnica spodbuja slabo programersko prakso.

Z pojavitvijo mikroračunalnikov, okrog leta 1975, se je pojavila potreba po neki vrsti vmesnika skozi katerega lahko uporabnik kaj počne s takim računalnikom. Kasete ki so se uporabljale za shranjevanje podatkov pa niso bile primerno hitre. BASIC je tu našel svoje mesto saj je bil dovolj majhen da ga je šlo zapečt kar v ROM čipe računalnika, obenem pa je bil dovolj enostaven da se ga je lahko naučil domači uporabnik.

Ta uspeh je poizkušalo ponoviti večje število različnih podjetij in s tem so se rodile nove vrste BASIC programskih jezikov, tudi Microsoft BASIC in kajpak Apple BASIC. Ti programski jeziki so se nato nadalje razvijali in postali taki kot jih poznamo dandanes. Microsoftov BASIC se je s prihodom DOSa razvil v GW-BASIC (značilnost le-tega pa je bila da je tekel v celoti z diska in ne več iz čipa vgrajenega v računalnik), kasneje pa iz slednjega še QBasic in Quick Basic. Številne druge firme so tudi naredile svoje variante BASICa.

Z razvojem računalniškega trga, ko računalniki niso več bili igrače zanesenjakov ampak vedno bolj pisarniško orodje, pa je BASIC izgubil precej svoje slave. Popularen je postal ponovno šele ko je Microsoft razvil Visual Basic.

Z nedavnim razvojem popularnosti odprte kode pa so se začeli pojavljati tudi številni dialekti BASICa ki so ponovno popolnoma zastonj.

Jezikoslovna pravila

uredi

Osnovni stavki v BASICu se začnejo z zaporedno številko, zaključeni pa so s koncem vrstice razen če se konec vrstice nahaja poseben znak. Razlog za navidez neumno obvezno oštevilčevanje vrstic je bil v dejstvu, da zgodnji primeri BASIC razvojnih okolij niso podpirali ukazovnih menijev ali miškinega kazalca, kar je pomenilo da je bila edina razlika med direktnim ukazom okolju in neko vrstico programa v tem da je bila vrstica oštevilčena. S prihodom razvojnih okolij z menuji so obvezno oštevilčevanje ukinili.

Osnovni ukazi v BASICu so oblikovani podobno kot strojna koda, le da so skladni z zgoraj omenjenimi osmimi točkami. Ukazi so torej lahko razumljivi uporabniku in uporabnika ločijo od strojne opreme in operacijskega sistema.

Najbolj minimalistični nabor BASIC ukazov je tako LET (delo z matematičnimi enačbami), PRINT (izpis), IF (pogojni blok) in GOTO (preusmeritev programa na izbrano vrstico). Kot v osnovi jezik za delanje z matematičnimi enačbami tako BASIC podpira tudi delo z znanimi matematičnimi in logičnimi operatorji v karseda naravnem načinu.

Kasnejše različice BASICov so začele podpirati strukture iz programskih jezikov C in Pascal na primer:

  • Do - loop - while - until - exit
  • gosub - sub - function
  • switch - case

V različicah BASICa kot je Visual Basic pa so se pojavili ukazi za hitrejše delo s predmeti.

Vsak dialekt BASICa prav tako vsebuje obširen sklop različnih ukazov in funkcij, ki olajšajo programiranje in spadajo med tiste ukaze za napredne uporabnike. V večnini BASICov se preko teh ukazov tudi da posegat v delovanje računalnikove strojne opreme in drugih programov.

Variante BASICa za razliko od drugih družin programskih jezikov nimajo medsebojno skladne slovnice.

Primeri implementacij

uredi

Primer programa:

10 PRINT »Pozdravljen svet!«
20 END

Obstaja zelo veliko različic BASICa, nekaj najbolj znanih:

Zunanje povezave

uredi
  NODES
OOP 1
os 36
visual 3