In dit artikel zullen we het hebben over Rexx, een onderwerp dat door de jaren heen onderwerp van belangstelling en debat is geweest. Rexx is een concept dat veel wordt besproken in de hedendaagse samenleving, en de relevantie ervan is tot uiting gekomen in verschillende studiegebieden. Van geschiedenis tot psychologie, wetenschap en populaire cultuur: Rexx heeft de aandacht getrokken van academici, experts en het grote publiek. In dit artikel zullen we de oorsprong, betekenissen en gevolgen van Rexx onderzoeken, evenals de impact ervan op de hedendaagse samenleving.
REXX (REstructured eXtended eXecutor) | ||||
---|---|---|---|---|
Paradigma | multi-paradigma, gestructureerd | |||
Verschenen | 1979 (45 jaar) | |||
Ontwerper | Mike Cowlishaw | |||
Ontwikkelaar | Mike Cowlishaw, IBM | |||
Huidige versie | ANSI X3.274 ![]() | |||
Typesysteem | dynamisch typesysteem | |||
Implementaties | NetREXX (IBM), Open Object REXX, Regina en anderen | |||
Beïnvloed door | PL/1, EXEC 2, Basic | |||
Bestandsextensies | cmd, bat, exec, rexx, rex, EXEC | |||
|
REXX (Restructured Extended Executor) is een door IBM ontwikkelde programmeertaal. Er zijn diverse implementaties beschikbaar onder opensourcelicenties. REXX is een gestructureerde programmeertaal, ontworpen om gemakkelijk te leren en gemakkelijk te lezen. Er zijn commerciële en open source interpreters beschikbaar voor verschillende computerplatforms. Er zijn ook compilers beschikbaar voor IBM-mainframes.
REXX heeft de volgende eigenschappen en mogelijkheden:
REXX heeft maar 23, meestal zichzelf verklarende instructies (bijvoorbeeld call, parse en select), met minimale interpunctie en formatterings-eisen. Het is een taal met een vrij formaat met slechts 1 datatype: de tekenstring. Dit betekent dat alle data zichtbaar (symbolisch) is en dat debuggen eenvoudiger is.
De syntaxis van REXX lijkt op die van PL/I, maar kent minder notaties. Dit maakt het interpreteren door een programma lastiger, maar maakt het eenvoudiger om een programma in REXX te schrijven.
REXX is ontworpen en voor het eerst geïmplementeerd als een vrije-tijdsproject door Mike Cowlishaw tussen 20 maart 1979 en midden 1982. Oorspronkelijk was het de bedoeling om een scripttaal te maken om de talen EXEC en EXEC 2 te vervangen. Het was ontworpen om een macro- of scripttaal te zijn op elk mogelijk computerplatform. In dit opzicht is REXX een voorloper van Tcl en Python.
REXX werd voor het eerst in het openbaar beschreven op de SHARE 56-conferentie in Houston in 1981. De reacties van klanten, aangevoerd door Ted Johnston van SLAC leidden ertoe dat IBM het uitbracht als een product in 1982.
In de loop der jaren heeft IBM REXX een onderdeel gemaakt van bijna al haar besturingssystemen: VM/CMS, VM/GCS, MVS TSO/E, AS/400, OS/2, VSE/ESA, AIX, CICS/ESA en PC-DOS. Ook zijn er versies beschikbaar voor Novell Netware, Windows, Java en Linux.
De eerste niet-IBM-versie werd in 1984/1985 voor PC-DOS geschreven door Charles Daney. Andere versies zijn ontwikkeld voor Atari, Amiga, Unix (vele varianten), Solaris, DEC, Windows, Windows CE, PocketPC, MS-DOS, Palm OS, QNX, OS/2, Linux, BeOS, EPOC32, AtheOS, OpenVMS, OpenEdition, Macintosh en Mac OS X.
Er zijn verschillende freewareversies beschikbaar. In 1992 verschenen de meestgebruikte open sourceversies: Ian Colliers REXX/imc voor Unix en Anders Christensens Regina (verder ontwikkeld door Mark Hessling) voor Windows en Linux. BREXX is een implementatie voor WinCE- en PocketPC-platforms.
In 1996 publiceerde ANSI een standaard voor REXX: ANSI X3274–1996 "Information Technology – Programming Language REXX".
Sinds midden jaren 1990 zijn er twee nieuwere varianten van REXX verschenen:
Op 12 oktober 2004 kondigde IBM aan dat ze van plan was om haar implementatie van ObjectREXX vrij te geven onder de Common Public License.