AMIGA REVIEW obsah časopisu online!
  Domov     Software     Hry     Obaly     Download  

HiSoft Basic v 2


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.

Vytlačiť článok



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



none

AMIGA REVIEW

57 ( 11-12 / 2000 )
56 ( 9-10 / 2000 )
55 ( 7-8 / 2000 )
54 ( 5-6 / 2000 )
53 ( 3-4 / 2000 )
52 ( 1-2 / 2000 )
 
51 ( 12 / 1999 )
50 ( 11 / 1999 )
49 ( 10 / 1999 )
48 ( 9 / 1999 )
46-47 ( 7-8 / 1999 )
45 ( 6 / 1999 )
44 ( 5 / 1999 )
43 ( 4 / 1999 )
42 ( 3 / 1999 )
41 ( 2 / 1999 )
40 ( 1 / 1999 )
 
39 ( 12 / 1998 )
38 ( 11 / 1998 )
37 ( 10 / 1998 )
36 ( 9 / 1998 )
35 ( x / 1998 )
34 ( x / 1998 )
33 ( 1-2 / 1998 )
 
32 ( 11-12 / 1997 )
31 ( 9-10 / 1997 )
30 ( 7-8 / 1997 )
29 ( 6 / 1997 )
28 ( 5 / 1997 )
27 ( 4 / 1997 )
26 ( 3 / 1997 )
25 ( 2 / 1997 )
24 ( 1 / 1997 )
 
23 ( 12 / 1996 )
22 ( 11 / 1996 )
21 ( 10 / 1996 )
20 ( 9 / 1996 )
18-19 ( 7-8 / 1996 )
17 ( 6 / 1996 )
16 ( 5 / 1996 )
15 ( 4 / 1996 )
14 ( 3 / 1996 )
13 ( 2 / 1996 )
12 ( 1 / 1996 )
 
11 ( 12 / 1995 )
10 ( 11 / 1995 )
9 ( 10 / 1995 )
8 ( 9 / 1995 )
7 ( 7 / 1995 )
6 ( 5 / 1995 )

ATLANTIDA NEWS

5 ( 3 / 1995 )
4 ( 1 / 1995 )
 
3 ( 11 / 1994 )
2 ( 9 / 1994 )
1 ( 7 / 1994 )
0 ( 5 / 1994 )