REXX

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
REXX
linguaggio di programmazione
AutoreIBM
Data di origine1979
Ultima versioneANSI X3.274 (1996)
UtilizzoElaborazione dati, testi, report
ParadigmiProgrammazione procedurale, strutturata
TipizzazioneDinamico
Estensioni comuni.exec .rexx .rex
Influenzato daPL/I, ALGOL, CMS EXEC e EXEC 2

REXX (REstructured eXtended eXecutor) è un linguaggio di programmazione interpretato sviluppato da IBM. È un linguaggio di programmazione ad alto livello strutturato che fu progettato per essere semplice sia da apprendere che da leggere. Interpreti sia proprietari che open source per REXX sono disponibili per un'ampia gamma di piattaforme. Inoltre compilatori sono disponibili per mainframe IBM.

REXX è ampiamente utilizzato come linguaggio macro ed è spesso impiegato nell'elaborazione dei dati e testi e per generare report; grazie a tali caratteristiche, così come il linguaggio Perl, REXX è spesso impiegato anche nella programmazione CGI. REXX è anche utilizzato come linguaggio macro interno in alcuni software, tra cui l'emulatore di terminale ZOC. Inoltre, il linguaggio REXX può essere impiegato per operazioni di scripting e macro in qualsiasi programma che usi motori di scripting Windows Scripting Host ActiveX (quali VBScript e JScript).

REXX era fornito con il sistema OS/2 (dalla versione 1.3 in poi), PC-DOS (7.0 o 2000) e Windows NT 4.0. Gli script REXX per OS/2 e Windows NT possiedono estensione .cmd (la prima linea dello script ne specifica il formato). Un interprete REXX per Amiga chiamato ARexx venne incluso nel sistema operativo AmigaOS dalla versione 2.0.

Caratteristiche

[modifica | modifica wikitesto]

REXX possiede le seguenti caratteristiche:

  • sintassi semplice
  • piccolo insieme di istruzioni (costituito da una ventina di istruzioni)
  • sintassi libera
  • variabili senza tipo
  • basato su stringhe a carattere
  • sistema dei tipi dinamico
  • nessuna parola chiave riservata (eccetto in contesti locali)
  • precisione numerica arbitraria
  • aritmetica decimale (floating point)
  • ampia scelta di funzioni built-in (specialmente per l'elaborazione di stringhe e parole)
  • gestione automatica della memorizzazione
  • protezione dal crash
  • array associativi
  • accesso immediato ai comandi e alle utilità di sistema
  • semplice gestione dell'errore; tracing e debugger built-in
  • poche limitazioni artificiali
  • utilità di I/O semplificate
  • operatori non convenzionali

Altri progetti

[modifica | modifica wikitesto]
Controllo di autoritàLCCN (ENsh85113550 · GND (DE4196484-6 · J9U (ENHE987007536464205171
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica