Turbo BASIC

Z Multimediaexpo.cz

Tento článek je aplikaci Turbo BASIC firmy Borland. Další možné významy jsou: Turbo Basic XL – dialekt programovacího jazyka BASIC pro 8-bitové počítače Atari. Rozšíření BASICu v Commodore 64 je také nazýváno Turbo Basic, napsal jej Julian Gardner a pod názvem Tubo Basic jej prodával Aztec Software počátkem osmdesátých let.

Turbo BASIC je dialekt jazyka BASIC a jeho kompilátor původně vytvořený Robertem 'Bobem' Zalem a následně odkoupený firmou Borland. Když se Borland rozhodl zastavit vydávání, Zale jej koupil zpět, přejmenoval na PowerBASIC a založil PowerBASIC Inc. pro pokračování vývoje a podpory. Dodnes se stále prodává.

Tento software je z období let 1987-1988 a svým vzhledem „černého okna“ se podobal dalším aplikacím firmy Borland v té době, Turbo Pascal 4.0, Turbo C 1.0/1.5, a Turbo Prolog 1.1. Vývojové prostředí s modrým oknem (na které má Borland ochranou známku) se objevilo až v roce 1989, kdy Borland vydal Turbo C 2.0, Turbo C++ 1.1, aj. V té době se již ale Turbo Basic a Turbo Prolog neprodávaly.

Na rozdíl od většiny implementací jazyka BASIC v té době, Turbo BASIC byl plnohodnotný kompilátor, který generoval strojový kód pro MS-DOS, zatímco jiné implementace byly interpretry nebo vyžadovaly runtime knihovny. Integrované vývojové prostředí umožňovalo spustit vytvořený program uvnitř sama sebe a jeho debugování, nebo kompilaci do samostatných MS-DOS EXE souborů, které mohly běžet na jiných systémech bez Turbo Basicu nebo runtime knihoven.

Příklad kódu

Následující program je ukázka dialektu podobného ALGOLu, který Turbo Basic podporuje. Zatímco tradiční BASICy vyžadují číslování řádků, obsahují pouze omezené řídicí struktury a nepodporují ALGOLovské subrutiny (procedury/funkce), moderní dialekty BASICu z té doby byly rozšířeny tak, aby odpovídaly (tehdy) modernímu strukturovanému programování.

 INPUT "What is your name:", A$
 PRINT "Hello "; A$
 DO
   S$ = ""
   INPUT "How many stars do you want to print"; S
   FOR I = 1 TO S
     S$ = S$ + "*"
   NEXT I
   PRINT S$
   DO 
     INPUT "Do you want to print more stars"; Q$
   LOOP WHILE LEN(Q$) = 0
   Q$ = LEFT$(Q$, 1)
 LOOP WHILE (Q$ = "Y") OR (Q$ = "y")
 PRINT „Goodbye “; A$

Související články