ARexx

Historia

Jest to język programowania tzw. skryptowy. Pochodzi on od języka REXX opracowanego przez IBM dla potrzeby komunikacji miedzy komputerami. Jego amigowa implementacja została stworzona w 1987 r. przez Williama S. Hawes’a. Początkowo miał status shareware, od Workbencha 2.0 (1990r.) jest zintegrowany z systemem. William Hawes nie jest już zaangażowany w rozwój programów Amigi z powodu kłótni w przeszłości z Commodore o licencję ARexxa.

ARexx jest napisany w assemblerze (Metacomco) procesora 68000 i nie został przepisany na PPC. Jak również nie jest rozwijany. Prawa do niego od 1991 r. ma Wishful Thinking Development Corporation.

Możliwości

ARexx uwypukla istotny element systemu AmigaOS – wielozadaniowość. Umożliwia komunikację między programami. To znaczy że możemy opracować zestaw poleceń, które będą wykonywać się między programami (ARexx wykorzystuje nie tylko wielozadaniowość systemu ale i komunikację między procesami w systemie).

Pozwala to mieszać i łączyć funkcje różnych programów. Przykładowo – skrypty ARexxa mogą pobrać dane z bazy, wstawić dane do arkusza kalkulacyjnego (do wykonania obliczeń na nich), a następnie wstawić tabele i wykresy (uzyskane w oparciu o wyniki) do edytora tekstu (dokumentu).

Częściej jednak stosuje się go w jednym programie, np. do automatyzacji pewnych rzeczy – chodzi o to, by wykonywały się bez konieczności potwierdzania z naszej strony. Przykładowo – otwieranie po kolei obrazków z określonego katalogu i wykonywanie na nich tej samej czynności (np. zmniejszenie rozmiaru i zapis do innego formatu).
Nie ma znaczenie że programy pochodzą od różnych producentów – będą za pośrednictwem ARexxa współdziałać między sobą. Warunek jest jeden – program taki musi posiadać tzw. port ARexx-a czyli możliwość wywołania określonych funkcji czy działań.

ARexx jest obsługiwany na wszystkich konfiguracjach sprzętowych Amigi.
W nowszych wersjach AmigaOS wprowadzono inny język skryptowy, Python, który miał wyprzeć ARexxa jako „staroć”. Nic takiego się nie stało. Nowsze nie znaczy lepsze, a ARexx mimo upływu lat spełnia dalej swoje zadania – bo niby czemu by nie miał (tu ciśnie mi się pewna anegdota na temat niezmienności ale się powstrzymam).
Można wysyłać komendy bezpośrednio ze skryptów Pythona do programów korzystających z ARexxa (korzystając z modułu „arexx” dla amigowego Pythona). Jest to niewątpliwie dobra rzecz, niemniej ARexx jest ciągle obecny w systemie, warto o nim pamiętać, a nawet go poznać.

Skąd czerpać wiedzę

Poniżej fundamentalne pozycje:

Arexx Users Reference Manual” – William S. Hawes, 1987 r.

AMIGA – Programmer’s Guide to ARexx” – Commodore-Amiga Inc., 1991 r.

Anglojęzycznych pozycji jest sporo więcej, leżą w pdf – np tu jest pozycja „Using Arexx on the Amiga

Język polski:

Szkółki i artykuły w czasopisma amigowych

Magazyn Amiga 

rocznik 1992 – numery 1, 2, 3, 4

rocznik 1993 – numery 1,2,3

rocznik 1994 – numer 12

rocznik 1995 – numer 3

rocznik 1996 – numer 3 i 4

rocznik 1997 – numer 9

rocznik 1998 – numer 11

Amiga Computer Studio 

rocznik 2000, numer 6

Amigowiec 

rocznik 1993 – numer 9/10

rocznik 1994 – numery 1, 2, 3, 4 i 8

Także rozdziały niektórych książek amigowych były poświęcone ARexowi.

Przykładowo w książce Adama i Jakuba Zalepów „Amiga od A do Z” Arexxowi poświęcono około 50 stron.

Szkółka

Jako że nie jestem programistą nie mogę poprowadzić takiej szkółki.

W internecie po polsku jest trzyczęściowa „szkółka” na PPA:

Arexx w praktyce – część 1

Arexx w praktyce – część 2: Directory Opus Magellan

ARexx w praktyce – część 3: wymiana danych między programami

Reklamy

2 thoughts on “ARexx”

  1. Skora AREXX nie został przepisany pod PPC to w jaki sposób jest wykorzystywany w nowych Amigach? No i dlaczego nie został przepisany, skoro Python nie zrobił takiej furory? Z braku rąk do pracy?

  2. Petunia – emulacja procesora Motoroli 68020 załatwia sprawę, czyli jeśli coś nie odwołuje się do chipsetów specjalizowanych to będzie działać. Podobnie działa np. program TV Paint nie mając wersji PPC.

    Pytanie „czemu ARexx nie został przepisany” – odpowiedź jest w pierwszych dwóch akapitach tekstu. Zarówno twórca Arexxa jak i obecny właściciel nie są zainteresowani. To nie jest projekt o otwartych źródłach tylko komercyjny. Python natomiast jest darmowy, jest wymagany przez program Blender, i dlatego do nas trafił. Byłbym jednak ostrożny z wprowadzaniem kolejnych nieświeżych rzeczy ze świata PC, bo system puchnie. To w dłuższej perspektywie czasu może okazać się wysoką ceną za używanie kilku programów.Z tych samych powodów nie jestem entuzjastą .so i AmiCygnixa.

    Do komunikacji między programami czy prostych skryptów automatyzujących ARexx jako język jest wystarczający. No i jest wspomniana furtka w Pythonie.

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj / Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj / Zmień )

Zdjęcie na Google+

Komentujesz korzystając z konta Google+. Wyloguj / Zmień )

Connecting to %s