Pokud nejste ostřílení borci z éry před verzí 2.0, pak jste zřejmě nikdy nepoužívali AmigaBASIC. Snaží se nám také tento produkt dokázat, že Basicu jako účinnému programovacímu jazyku stále ještě neodzvonilo? Jeho souboj s tolik populárním C-éčkem bude jistě zajímavý, ale na vítěze by jsem si nevsadil. Vrátí se snad programátoři ke kořenům? Já se domnívám že nikoliv, ale pro začátečníky bude HSB2 určitě postačující.
AmigaBASIC, vyvinutý firmou Microsoft již v roce 1985 pro původní Amigu 1000,
byl mocný nástupce interpretačních typů jazyka BASIC, které používalo velké
množství 8 bitových počítačů. (ABasiC vlastně předcházel AmigaBASIC, ale rychle
se od něj upustilo). V době, kdy se objevila verze 2.0, se AmigaBASIC stal
obstarožním nástrojem, který již příliš novým počítačům nevyhovoval, a tak
ustoupil ve prospěch programu ARexx.
Jak si "veteráni" jistě pamatují, interpretační jazyk AmigaBASIC byl pomalý a
nebyl "přesně šitý na Amigu", tak jak býval mohl být. Přes všechno toto na Amize
usnadnil programování a nevyžadoval rozsáhlejší znalosti o operačním systému.
Popularitu AmigaBASICu zvětšil počet doplňků (kompilerů a rozšíření jazyka), z
nichž posledním je HiSoft BASIC verze 2.
HSB2, největší modernizace verze HiSoft BASIC Pro, je doplněk k AmigaBASICu a
ještě něco více. Kromě toho, že nabízí velkou kompatibilitu s programy
AmigaBASICu, slušně si také rozumí s Quick BASICem od Microsoftu, Turbo Basicem
od Borlandu a dokonce s mnoha všeobecnými osmibitovými verzemi programu BASIC.
Má profesionální integrované vývojové prostředí Style Guide (textový
editor/překladač/ladicí program-debugger) připomínající jazyky Borlandu pro PC.
Celý software se dodává pouze na jedné disketě, ovšem je na ní zkomprimován.
Proto je nutno jej nainstalovat: buďto na tři diskety nebo na pevný disk pomocí
standardní utility Installer. Plná instalace včetně velkého množství příkladů
zabere téměř 3 MB paměti. Ačkoli je HSB2 kompatibilní se všemi 1 MB Amigami 1.3
až 3.1, doporučuje se počítač 2 MB 2.04+ s pevným diskem.
Jazyk
Jazyk HSB2 je v podstatě nadřazený modul jazyka AmigaBASIC s nejrůznějšími
doplňky pro ostatní druhy jazyka BASIC. Všechny příkazy AmigaBASICu zůstaly
zachovány kromě specifických příkazů překladače a kromě příkazů COMMON, RESUME a
OBJECT PRIORITY, které zmizely z neznámých důvodů (viz Tabulka č.1). Jazyk
rozpozná téměř každou platnou syntaxi AmigaBASICu, takže nejčastější problémy
přenosu by zahrnovaly programy používající příkazy HSB2 jako jména proměnných.
Přiložený soubor (AmBas.bh) řeší tento problém tím, že zablokuje většinu nových
příkazů, ale obsahuje skrytou chybu. Editací souboru AmBas.bh můžete tuto chybu
odstranit a vyloučit zablokovaný příkaz REM.
Co se týče doplňků jazyka, velké množství původních příkazů má některé nové
parametry nebo novou syntaxi. Všechny příkazy vztahující se ke grafice byly
rozšířeny na 256 barevnou AGA - stále chybí přímá podpora EHB/HAM/HAM8. Najdete
také množství nových příkazů nabízejících další možnosti při tvorbě smyček a
nové příkazy rozhodovací, více možností při práci s řetězci, schopnost nahrávat
a uchovávat libovolné bloky dat a mezi jinými věcmi i pravé rekurzivní funkce.
Stručně řečeno, HSB2 poskytuje mnoho z moderní, strukturované funkčnosti jazyka
BASIC, což AmigaBASICu chybělo. Jediným skutečným opomenutím - stejně jako u
AmigaBASICu - jsou strukturované datové objekty jako záznam nebo struktura.
Dokonce s mnohem účinnější sadou příkazů, které jsou k dispozici, zůstane váš
přístup k mnoha znakům Amigy celkem omezený. Platí to tehdy, pokud vaše znalosti
nejsou dostatečné natolik, abyste si zavolali funkce operačního systému přímo.
HSB2 poskytuje všechny .bmap .bh a .bc funkce včetně souborů, které budete
potřebovat pro cokoli od verze 1.3 do 3.1. Naproti tomu dokumentace přináší o
systémovém programování na Amize jen velmi málo, a tak se manuály o ROM Kernel
stávají nutnou četbou. Bylo by příjemnější, kdyby bylo více znaků týkajících se
operačního systému přístupných přímo přes příkazy BASICU.
Textový editor
Ačkoli můžete použít libovolný editor a kompilovat z příkazového řádku, dáte
možná přednost editoru vestavěnému. HSB editor integruje editaci zdrojového
kódu, kompilaci, a odlaďování, poskytuje interaktivní vývoj programů. Po letech
používání obdobných integrovaných programovacích prostředí na počítači PC jsem
přesvědčen, že je to na míle vzdáleno starému stylu příkazových řádků.
Editor samozřejmě vykonává všechnu standardní manipulaci s textem a produkuje
také několik zvuků. Textové bloky lze například přesouvat doleva nebo doprava a
také u nich měnit velká písmena na malá a naopak. Je možné nastavit až deset
záložek. Můžete nahrávat a spouštět makra, ale nemůžete je přehrávat nebo
ukládat. Jednotlivá okna se mohou naaranžovat mnoha předdefinovanými způsoby.
Soubory si můžete prohlížet v několika různých pohledech. Celkově je editor HSB
určitě dostatečný pro editační potřeby vašeho zdrojového kódu, i když
specializované textové editory jej jistě předčí.
Překladač
Překladač vyvoláme pomocí příkazové řádky nebo pomocí menu a klávesových
zkratek v editoru. Jak můžete očekávat, k dispozici je celá řada kompilačních
možností jako je kompatibilita, kontrola bezpečnosti a odlaďování. Můžete je
volit jednotlivě ve vašem zdrojovém kódu nebo souborně jako vhodné předvolby
menu. Schází pouze specifická generace kódu CPU a FPU, takže jste odkázáni čistě
na kód 68000.
Zvláště užitečný znak překladače je předběžná příprava lexikálních jednotek.
Pokud je třeba zařadit soubory, které se zřídka modifikují (například volání
funkcí operačního systému), můžete je připravit (kompilovat) pouze jednou a
ušetřit tak zdlouhavé překládání během vývoje. Tato úspora času je skvělá, HSB2
by však měl být schopen vytvářet objektové moduly nebo knihovny funkcí (podobně
jako jednotky v Pascalu), které by bylo možné používat v jiných BASICových
programech. HSB2 však umí vytvářet objektový kód, který lze spojovat s jazykem C
a s podprocedurami asembleru.
Další věcí, která stojí za zmínku je sdílená knihovna. Programy lze kompilovat
jako samostatné nebo vyžadující 52 Kb hbasic2.library, která je nainstalována ve
vašem adresáři Libs. Knihovna zkracuje dokončené programy asi o 14 K
inicializačního kódu a kódu prostředí, ale dokumentace se nezmiňuje o statutu
autorského práva daného programu. Vzhledem k závislosti na této knihovně je to
také trochu těžkopádné. Plánujete-li vaše programy šířit dále, doporučoval bych
samostatnou kompilaci.
Debugger
Debugger programu HSB2 se jmenuje MonAm. Je také obsažen v programovém
balíku DevPac 3 a vyvolává smíšené pocity. Tento mocný nástroj je zcela jasně
směrován na zkušené programátory a na hackery. Po spuštění MonAm z editoru se
ukáže uživatelská obrazovka, která je rozdělena maximálně na pět částí
podobajících se oknům. Tato okna zobrazují obsah registrů, výpisy z paměti,
zpětné překlady programu a vlastní zdrojový kód. Protože MonAm je strojově
orientovaný odlaďovací program, všechny operace jako je krokování vašeho kódu
nebo trasování (sledování) pomocí bodů přerušení se děje na základě jednotlivých
strojových instrukcí. Jediným vysokoúrovňovým znakem je spojení každého
programového BASICovského řádku s odpovídajícím kódem asembleru.
Tento styl odlaďování je pro Amigu běžný, ale některé vysokoúrovňové možnosti by
byly opravdu vítané. Chtěl bych například krokovat provedení každé BASICovské
řádky pomocí zvýrazněného pruhu přímo v okně editoru. A co třeba okno v
obrazovce editoru na prohlížení a modifikování obsahu proměnných během krokování
a trasování. Nejsou to ve skutečnosti žádné nové znaky, Borland a ostatní je již
po několik let používají v produktech na PC. Všechny programovací jazyky na
Amigu by je měly mít také, skýtaly by jim opravdu obrovský užitek při
odlaďování.
Manuál
640 stránkový manuál HSB2 je nepochybně jednou ze světlých stránek, je
mnohem přístupnější než tajemný starý manuál na AmigaBASIC. Je opravdu prospěšný
pro ty, kteří nejsou s BASICem seznámeni i pro ty, kteří se chtějí podrobně
seznámit s použitím editoru, překladače a debuggeru. Obsahuje dále referenční
část vysvětlující příkazy. Jak již bylo řečeno dříve, poskytuje manuál velice
málo informací o operačním systému. Podává hlavně přehled o celkových modulech
(knihovny, zařízení, zdroje apod.). Předpokládám, že je to pochopitelné, protože
operační systém je skutečně velmi složitý.
Závěr
Rozhodujícím kritériem u každého vývojového systému je to, jak snadno se
programy vytvářejí. HSB2 je v tomto ohledu na výši. Zcela upřímně řečeno, v
programu HSB2 můžete dělat vše to, co můžete udělat v jazyce C. To ale nemění
nic na faktu, že jazyk C je účinnější a efektivnější. Konec konců operační
systém Amigy je napsán v C. BASIC je však snazší na porozumění a HSB2 poskytuje
dobré, uživatelsky příjemné prostředí. Pokud se zajímáte o programování v
BASICU, pak je HSB2 volba stojící za úvahu.
Pozn.: články boli naskenované ako text a preto obsahujú aj zopár chýb. Taktiež neručíme za zdrojové kódy (Asm, C, Arexx, AmigaGuide, Html) a odkazy na web. Dúfame, že napriek tomu vám táto databáza dobre poslúži.
Žiadna časť nesmie byť reprodukovaná alebo inak šírená bez písomného povolenia vydavatela © ATLANTIDA Publishing