Job Control Language (JCL) is a language used on IBM Mainframe operating systems to instruct the Job Entry Subsystem (JES2 or JES3) how to run a batch program or start a subsystem.

JCL is characterized by a pair of slashes "//" in column 1 and 2 of each statement. (The slashes date back from when punched cards were used to submit JCL for execution. If the cards were back to front in the reader the slashes wouldn't be read first [the sequence numbers would be] so the card deck could be rejected.)

The basic syntax of JCL for z/OS hasn't changed since the 1960's, it is the same as JCL for OS/360.

//BATCHJOB JOB ('12345'),MSGCLASS=H,MSGLEVEL=(1,1),NOTIFY=ME,
// USER=ME,REGION=400K
//STEP1 EXEC PGM=HELLO
//STEPLIB DD DISP=SHR,DSN=MY.LOAD.LIBRARY
//SYSPRINT DD SYSOUT=*

DOS/VSE also has a JCL language. Its syntax is entirely different, the only similarity is that cards have "//" in columns 1 and 2.