w języku PL/I
Niejednolite konstrukcje Różnorodność i duża liczba języków programowania sprawia, że wiele typowych konstrukcji w różnych językach może: stanowić samodzielną jednostkę, np. instrukcję, stanowić frazę pewnej jednostki nadrzędnej. Powyższe stwierdzenie można prześledzić na przykładnie konstrukcji while warunek …; występującą w większości języków programowania wysokiego poziomu. Ta konstrukcja występuje jako: instrukcja, w takich językach jak, np. C, C++, Pascal, Modula 2 i inne, fraza instrukcji pętli, np. PL/I.
Zdefiniowanie konstrukcji WHILE jako frazy umożliwia definiowanie bardziej złożonego sterowania przepływem, niż w przypadku odrębnych instrukcji, np. łączenie fraz TO i WHLIE. Język Pascal Język PL/Ifor i=1 to 10 do begin if not (a<c) then goto koniec; { instrukcje } end; koniec: ...DO I=1 TO 10 WHILE A<C; /* instrukcje */ END;
Powyższe instrukcję będą wykonywane dla wartości zmiennej sterującej z zakresu 1 do 10, ale tylko gdy spełniony będzie równocześnie warunek, że a<c.