REXX (ang. REstructured eXtended eXecutor) – proceduralny interpretowany język programowania zaprojektowany przez Mike’a Cowlishawa. Jego składnia jest zbliżona do języka angielskiego. Po raz pierwszy pojawił się na platformie VM/SP Release 3 (VM/CMS) w 1983 roku.
Charakterystyka Dużą zaletą tego języka jest możliwość zastosowania go jako języka programowania wsadowego w różnych systemach operacyjnych oraz języka skryptowego dla różnych środowisk i aplikacji. REXX charakteryzuje się dużym zestawem wbudowanych funkcji o naturalnych nazwach i argumentach, posiada tablice dynamiczne, nie trzeba deklarować zmiennych i określać ich typów.
Implementacje Na podstawie REXX-a powstały dwa języki obiektowe NetRexx i ObjectRexx dla tych trzech języków (REXX, NetRexx, ObjectRexx) obowiązuje zasada "write once, run anywhere". Przy pomocy wizualnych środowisk zdarzeniowego programowania w REXX-ie (np.VisPro/Rexx, GpfRexx, VX Rexx) można w bardzo prosty sposób tworzyć aplikacje z interfejsem graficznym GUI.
ARexx, implementacja języka Rexx dla AmigaOS i MorphOS, jest integralnym elementem tych systemów. Bardzo duża część oprogramowania dla AmigaOS/MorphOS jest wyposażona w porty ARexxa.