Ta cecha znacznie rozszerza możliwość programów i umożliwia komunikowanie się ich między sobą.

Zaimplementowany jest na wszystkich znaczących platformach firmy IBM: z/VM VSE/ESA OS/390, z/OS AIX OS/2 AS/400

Można go używać także na platformach niezwiązanych z IBM jak: Amiga MorphOS AROS HP OpenVMS HP NonStop Kernel (dawniej Tandem) wiele odmian UNIX-a (w tym FreeBSD, Linux, Solaris) Mac OS Microsoft Windows Palm OS

Składnia Instrukcja warunkowa IF IF [warunek] THEN [instrukcja] ELSE [instrukcja] Przykład wykorzystania instrukcji warunkowej: /* If varM jest większe od 10, then say "It's true". W przeciwnym przypadku, say "It's not true". */ varM = 5 + 2 IF varM > 10 THEN SAY "It's true." ELSE SAY "It's not true."

Operatory porównania = równe < mniejsze > większe <= mniejsze lub równe >= większe lub równe <> większe lub mniejsze (nierówne) \= lub ^= nierówne \< niemniejsze \> niewiększe SELECT jest używany w przypadku kiedy ma się wykonać jedna z kilku możliwych instrukcji warunkowych (pozostałe zostają pominięte). /* Sprawdź varM dla różnych wyrażeń ale wykonaj tylko jedną instrukcję dla wyrażenia */ SAY "Enter a number" PULL varM SELECT WHEN varM = 10 THEN SAY "It's equal to 10." WHEN varM < 10 THEN SAY "It's less than 10." WHEN varM < 20 THEN SAY "It's less than 20." END