ARexx

ARexx
Nyelvóra parancsoló
A végrehajtás típusa szkriptnyelv , makrónyelv és értelmezett programozási nyelv
Megjelent 1987
Fejlesztő William S. Howes és a Wishful Thinking Development
Fájlkiterjesztés _ .rexx .rx
Befolyásolt REXX
Engedély szabadalmazott

Az ARexx az Amiga számítógépekhez készült REXX programozási nyelv  dialektusa , amelyet 1987-ben fejlesztett ki William S. Hawes, a Wishful Thinking Development programozója, és számos olyan funkcióval rendelkezik, amelyek a szabványos REXX képességeken túlmenően támogatják az AmigaOS sajátosságait . Az ARexx számára írt programok általában szkriptfájlok vagy makrók formájában vannak .

Bármely [1] AmigaOS-hez írt alkalmazás, valamint az AROS képes ARexx szkriptek futtatására, hogy kibővítse képességeit és a programok közötti kommunikációt. Erre a célra az alkalmazások megnyitják az ún. "ARexx port", és meghatározza azon parancsok és/vagy funkciók készleteit, amelyek az ARexx szkriptekből ezen a porton keresztül hívhatók. Így egy egyedi ARexx szkript képes például meghívni az egyik vagy a másik alkalmazás által megvalósított függvényeket, és elküldeni a szkriptben értelmezett végrehajtásuk eredményét parancsargumentumként a harmadik és negyedik alkalmazásnak. Ez a képesség lehetővé teszi a különböző alkalmazások szolgáltatásainak és adatainak keverését. Például egy ARexx szkript lekérhet adatokat egy adatbázisból , hozzáadhatja azokat egy táblázathoz a számítások elvégzéséhez, majd az eredmények alapján táblázatokat és diagramokat szúrhat be egy szövegszerkesztőben megnyitott dokumentumba .

Történelem

Az ARexx első verziói 1987-ben jelentek meg, és William S. Hawes fejlesztette ki Amiga számítógépekre . A fejlesztőt a REXX által értelmezett nyelvi szintaxis vezérelte, amelyet Mike Kuleshov ír le a The REXX Language: A Practical Approach to Programming [2] című könyvében . Az ARexx-et a Commodore 1990-ben csatolta az AmigaOS 2.0 -hoz, és azóta az AmigaOS összes későbbi verziójában megtalálható. Az ARexx ezen későbbi verziója a hivatalos REXX nyelvi szintaxist követi, bár kifejezetten az Amiga számítógépes ökoszisztémához készült . Az AmigaOS 3.5-től kezdve még a Workbench is kapott egy saját ARexx portot, amelyen keresztül az ARexx használhatja a rendszerfunkciókat. Howes később részt vett a REXX ANSI szabványának kidolgozásában .

Az eredeti ARexx interpreter m68k assemblerben íródott, és AmigaOS 4 -ben és MorphOS -ben emulációs módban használatos, mivel nincs áthelyezve . Az ARexx C nyelven átírt verziója az AROS számára hiányos, és várhatóan a REXX másik dialektusa  , a Regina váltja fel . William Hawes már nem vesz részt az Amiga számítógépek alkalmazásainak fejlesztésében , és egyetlen más, az Amiga platformhoz kapcsolódó cég sem finanszírozza az ARexx új verzióinak fejlesztését. Ennek ellenére az ARexx meglévő verzióját továbbra is használják a klasszikus AmigaOS leszármazottaiban  - AmigaOS 4 , MorphOS és AROS .

Az ARexx kézikönyvből (a szerző egy hatásra vonatkozó kérdésre válaszol):

Az ARexx-et Amiga 1000 számítógépen fejlesztették ki 512 KB memóriával és két lemezmeghajtóval .
A prototípus értelmezőt C nyelven fejlesztették ki a Lattice C segítségével , a végső verziót pedig assemblerben írták meg a MetaComCo eszközkészlettel . A dokumentációt a TxEd szerkesztőben írták, és TeX gépelte be az AmigaTeX segítségével . Tehát ez egy Amiga 100%-os termék. [3]


Programstruktúra

Minden ARexx programnak (történelmi okokból) tartalmaznia kell legalább egy megjegyzéssort, és ennek kell lennie a program első sorának:

/* Ez az én programom */

Ennek a sornak a jelenléte jelzi a RexxMast értelmezőnek, hogy az adott fájl egy ARexx szkript. A fájl további megjegyzéssorait az értelmező figyelmen kívül hagyja, és a programozó szándéka szerint használhatja azokat. Valójában maga az ARexx program mindig csak a következő sorral kezdődik:

MONDD "Hello World!"

A parancs végrehajtásakor a „Hello World!” üzenet jelenik meg a konzol ablakában.

ARexx Libraries

Az ARexx előre definiált (rendszer) funkciók széles körű könyvtárával érkezik. Ezek a funkciók mindig rendelkezésre állnak, és optimálisan igazodnak az AmigaOS által elfogadott belső adatstruktúrákhoz , de emiatt nagymértékben eltérhetnek a hivatalos REXX parancskészlettől (például az ADDLIB () függvény).

Az előre definiált függvényeken kívül számos, külső programozók által írt további könyvtárból származó függvény található a szabványkészlet bővítése érdekében. Ezeket a további könyvtárakat a programból ARexx nyelven lehet csatlakoztatni, és ezt követően elérhetővé válik a bennük megvalósított funkcionalitás. Például:

Ez azonban csak egy kis része a meglévő könyvtáraknak, amelyekkel bővítheti az ARexx-et.

Lásd még

Jegyzetek

  1. ↑ Giguere , Eric ARexx Command Hosts .
  2. Cowlishaw, Michael. A REXX nyelv: A programozás gyakorlati megközelítése . — 1. - Prentice Hall, 1985. - ISBN 0-13-780651-5 .
  3. ARexx felhasználói kézikönyv

Linkek