Da fällt mir auch noch REXX ein.
Hier kann man CMD's (auch mit returnwerten) und SQL (mit Hostvariablen) lustig mischen, Funktionen (auch in "Copystrecken") mit Parametern und Returnwerten stricken und vieles mehr.
Äußerst flexibel und von der Laufzeit nicht uninteressant, da man meist sowieso externe Funktionen/Programme aufruft.
Sogar "Drucken" in eine SPLF klappt.
Man kann sogar flexible Parameter übergeben.