CL procedure

A procedure is a set of self-contained high-level language statements that performs a particular task and then returns to the caller.

In CL, a procedure typically begins with a PGM statement and ends with an ENDPGM statement.