ARexx

ARexx
Jazyková třída rozkazovací způsob
Typ provedení skriptovací jazyk , makrojazyk a interpretovaný programovací jazyk
Objevil se v 1987
Vývojář William S. Howes a vývoj přání
Přípona souboru .rexx .rx
Byl ovlivněn REXX
Licence proprietární

ARexx  je dialekt programovacího jazyka REXX pro počítače Amiga , vyvinutý v roce 1987 programátorem Williamem S. Hawesem z Wishful Thinking Development, s řadou funkcí nad rámec standardních možností REXX pro podporu specifik AmigaOS . Programy napsané pro ARexx jsou obvykle ve formě souborů skriptů nebo maker .

Jakákoli [1] aplikace napsaná pro AmigaOS, stejně jako AROS , může spouštět skripty ARexx pro rozšíření svých schopností a meziprogramové komunikace. Za tímto účelem aplikace otevírají tzv. "ARexx port" a definovat sady příkazů a/nebo funkcí dostupných pro volání ze skriptů ARexx přes tento pojmenovaný port. Vlastní skript ARexx tedy může například volat funkce implementované jednou a druhou aplikací a odeslat výsledky jejich provádění interpretované ve skriptu jako argumenty příkazu do třetí a čtvrté aplikace. Tato schopnost vám umožňuje kombinovat funkce a data z různých aplikací. Skript ARexx může například načíst data z databáze , přidat je do tabulkového procesoru k provádění výpočtů a poté vložit tabulky a grafy založené na výsledcích do dokumentu otevřeného v textovém editoru .

Historie

První verze ARexx se objevily v roce 1987 a byly vyvinuty pro počítače Amiga Williamem S. Hawesem . Vývojář se řídil syntaxí interpretovaného jazyka REXX , kterou popsal Mike Kuleshov v Jazyk REXX: Praktický přístup k programování [2] . ARexx byl součástí AmigaOS 2.0 společností Commodore v roce 1990 a od té doby je přítomen ve všech následujících verzích AmigaOS. Tato pozdější verze ARexx se řídí oficiální syntaxí jazyka REXX, ačkoli byla napsána speciálně pro počítačový ekosystém Amiga . Počínaje AmigaOS 3.5 má dokonce Workbench svůj vlastní port ARexx, přes který může ARexx používat systémové funkce. Howes se později podílel na vývoji standardu ANSI pro REXX .

Původní interpret ARexx byl napsán v assembleru m68k a je používán v AmigaOS 4 a MorphOS v emulačním režimu, protože nebyl portován . Verze ARexx přepsaná v C pro AROS je neúplná a očekává se, že bude nahrazena jiným dialektem REXX  , Regina . William Hawes se již nepodílí na vývoji aplikací pro počítače Amiga a žádná jiná firma spojená s platformou Amiga nefinancuje vývoj nových verzí ARexx. Navzdory tomu je stávající verze ARexx nadále používána v potomcích klasických AmigaOS  - AmigaOS 4 , MorphOS a AROS .

Z manuálu ARexx (autor odpovídá na otázku o dopadu):

ARexx byl vyvinut na počítači Amiga 1000 s 512 KB paměti a dvěma diskovými jednotkami .
Prototypový interpret byl vyvinut v C pomocí Lattice C a
konečná verze byla napsána v assembleru pomocí sady nástrojů MetaComCo .
Dokumentace byla napsána v editoru TxEd a napsána TeXem v AmigaTeX .
Takže toto je 100% produkt Amiga . [3]

Struktura programu

Každý program ARexx musí (z historických důvodů) obsahovat alespoň jeden řádek komentáře, a to musí být první řádek programu:

/* Toto je můj program */

Přítomnost tohoto řádku říká interpretu RexxMast, že daný soubor je skript ARexx. Další řádky komentářů v souboru jsou interpretem ignorovány a programátor je může použít podle záměru. Ve skutečnosti samotný program ARexx vždy začíná pouze následujícím řádkem:

ŘEKNĚTE "Ahoj světe!"

Po provedení tohoto příkazu se v okně konzoly zobrazí zpráva „Hello World!“.

Knihovny ARexx

ARexx přichází s rozsáhlou knihovnou předdefinovaných (systémových) funkcí. Tyto funkce jsou vždy dostupné a jsou optimálně sladěny s interními datovými strukturami přijatými AmigaOS , ale díky tomu se mohou značně lišit od oficiální sady příkazů REXX (například funkce ADDLIB ()).

Kromě předdefinovaných funkcí existuje mnoho funkcí z dalších knihoven napsaných programátory třetích stran pro rozšíření standardní sady. Tyto doplňkové knihovny lze připojit z programu v jazyce ARexx a poté se zpřístupní funkcionalita v nich implementovaná. Například:

Toto je však jen malá část existujících knihoven, kterými můžete ARexx rozšířit.

Viz také

Poznámky

  1. Giguere, Eric ARexx Command Hosts .
  2. Cowlishaw, Michael. Jazyk REXX: Praktický přístup k programování . — 1. - Prentice Hall, 1985. - ISBN 0-13-780651-5 .
  3. Uživatelská referenční příručka ARexx

Odkazy