BASIC - krátce z historie jazyka
Neznám natolik rozporuplný jazyk, jakým je v očima programátorů nahlíženo právě na BASIC. Mnozí programátoři ho předem zatracují a zjednodušují. Jiní ho považují za výtečný jazyk, v němž v mžiku udělají mnoho. Další pak většinou z neznalosti nechává chladnými.
Ať tak, či onak, pravdou zůstává, že historie jazyka BASIC je velmi bohatá a jeho kořeny sahají hluboko do minulosti. Konkrétně do roku 1963, v kterém dvojice John Kemeny a Thomas Kurtz navrhli původní verzi jazyka BASIC, kterou vzápětí pod jejich vedením implementoval tým studentů z Dartmouthu na sálovém počítači GE-256.
Cíle návrhu jazyka, které si autoři v počátku stanovili a jimiž se nejrůznější modifikace jazyka vyznačují dodnes, byly především jednoduchost s ohledem na začínající uživatele, obecnost a mnohoúčelovost, interaktivita, rozšiřitelnost vzhledem k potřebám pokročilých uživatelů, naprosté odstínění uživatelů od operačního systému a hardwaru, rychlá odezva pro malé programy a srozumitelné reportování chyb. Jazyk byl částečně založen na jazyku FORTRAN II a ALGOL 6O.
Původní BASIC získal označení podle místa vzniku jako Darmouth BASIC. BASIC nejen že v překladu znamená “základní”, ale jedná se o akronym Beginner’s All-purpose Symbolic Instruction Code, což by se dalo volně přeložit jako “univerzální jazyk symbolických instrukcí pro začátečníky”.
Kompilátor Dartmouth BASICu byl odpočátku poskytován zdarma, a tak se jazyku brzy dostalo širokého rozšíření. S nástupem minipočítačů nasadila BASIC společnost Digital Equipment Corporation do série minipočítačů PDP (Programmed Data Processor) a společnost Data General do minipočítače Data General Nova. V těchto minipočítačích byl jazyk implementován jako interpretr, namísto kompilátoru.
S nástupem mikropočítače Altair 8800 společnosti Micro Instrumentation and Telemetry Systems (MITS) v roce 1975 se BASIC ukázal velmi vhodným jazykem pro méně výkonné počítače. Jeden z prvních BASICů, který se na mikropočítači Altair 8800 objevil, byl Tiny BASIC, původně navržený Li-Chen Wangem. V témže roce pak zakladatelé nově vznikající společnosti Microsoft, Bill Gates a Paul Allen, vytvořili Altair Basic. O něco později pak z Altair BASICu vzešel Microsoft BASIC, který se v miliónech kopií stal velmi úspěšným. Microsoft BASIC se dokonce stal standardním jazykem počítače Apple II.
U mnoha počítačů tehdejší doby se BASIC umísťoval přímo do paměti ROM, a tak počítače startovaly přímo do BASICu. “Pamětníci” dob ne až tak vzdálených si jistě s určitou nostalgií vzpomenou na mikropočítače ZX Spectrum, Atari, Comodore, Sharp, PMD 85, IQ 151 a další, které taktéž měly BASIC umístěný přímo v paměti ROM.
V osmdesátých letech vytvořil Microsoft pro operační systémy MS-DOS, PC-DOS několik verzí BASICU, které zahrnují GW-BASIC, BASICA a Quick BASIC. Společnost BORLAND pak v roce 1985 vytvořila Turbo BASIC, z které se časem vyvinul známější PowerBASIC.
Za další mezník v historii jazyka BASIC lze považovat léta 1987-1988, na jejichž pomezí vznikal velmi populární Visual Basic. Za současného trvání Visual Basicu vznikl Visual Basic for Application, který své použití nalezl v kancelářském balíku Microsoft Office. V roce 2001 byl světu představen Visual Basic .NET, který je považován za další významnou verzi tohoto úspěšného jazyka.
V souvislosti s Linuxem se dnes můžeme s jazykem BASIC aktivně setkat v kancelářském balíku OpenOffice.org nebo multiplatformním open-source kompilátoru FreeBASIC. A dále pak ve velmi úspěšném a pokročilém jazyku GAMBAS, kterému jsme se již podrobněji věnovali v únorovém čísle LinuxEXPRESu z roku 2005.
GAMBAS (Gambas Also Mean BASic) neboli do češtiny volně přeloženo “GAMBAS také znamená BASIC”, je jazykem a vývojovým prostředím, které z velké části vytváří Francouz Benoît Minisini.
Představit objektivně na několika málo řádcích syntaxi a základy jazyka BASIC v tak širokém spektru jeho verzí a modifikací je bohužel téměř nemožné, a tak si pouze řekněme, že zápis kódu je velmi jednoduchý a srozumitelný, jak ostatně bude vidět z uváděných příkladů. Z počátku se jednotlivé řádky jazyka číslovaly. Později se číslování vytratilo. Z řádkového a procedurálního jazyka pak BASIC došel i k objektovému přístupu.
Dle slov autora je GAMBAS svobodný vývojový nástroj založený na interpretru jazyka Basic s objektovým rozšířením tak, jak je tomu u Visual Basicu. S Gambasem můžete rychle navrhnout GUI své aplikace, využívat MySQL, nebo PostgreSQL databáze, řídit KDE aplikace s DCOP (Desktop COmmunication Protokol) a mnoho dalšího.
Zápis kódu v jazyce Basic si dnes demonstrujeme na dvou příkladech. První příklad reprezentuje zápis v klasickém řádkovém BASICu a na obrazovku vypíše již tradiční pozdrav Hello World! Druhý příklad ukazuje na výpočtu faktoriálu program zapsaný ve Visual Basicu.
Hello World!:
10 PRINT "Hello World!"
Faktoriál:
Factorial function
Public Function Factorial(ByVal Factor As Byte) As Variant
If Factor = 0 Then
Factorial = 1
Else
Factorial = Factor * Factorial(Factor - 1)
End If
Exit Function
End Function
Private Sub Form_Load()
MsgBox Factorial(3)
End Sub
Odkazy k BASICu:
FreeBASIC
Gambas
Příklady kódu Visual Basicu a Visual Basicu .NET
Článek vyšel původně v časopisu LinuxEXPRES. Autor článku Lukáš Faltýnek.
Článek je uveřejněn s GNU FDL licencí (anglicky).







mv píše
am Duben 25 2008 @ 8:21 am
Compile Error:
Expected End Function
Zase chyba :-)))
mv píše
am Duben 25 2008 @ 8:22 am
…těším se na další pěkný článek od Kláry. Tentokrát tam může zahrnout i Borise a Hurriho, kteří se na odhalení chyby podíleli…
boris píše
am Duben 25 2008 @ 8:25 am
mv: lufa ti určitě vysvětlí, že to chyba vlastně není, ale super optimalizace
LuFa píše
am Duben 25 2008 @ 8:53 am
mv: Díky, chyba v kódu upravena.
boris: ee, mv skládám díky ;-).
hurri píše
am Duben 25 2008 @ 8:56 am
Hmmmmm, much better!
Pepa píše
am Srpen 23 2008 @ 2:28 pm
Fakt dobré kometáře… nespletli jste si stráku? chytráci