The JCL reference article from the English Wikipedia on 24-Jul-2004
(provided by Fixed Reference: snapshots of Wikipedia from wikipedia.org)

JCL

Time you got around to sponsoring a child

Job Control Language (JCL) is a scripting language used on IBM mainframe operating systems to instruct the Job Entry Subsystem (that is, 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 code for execution. If the cards were mistakenly put back to front in the reader the slashes wouldn't be read first (instead, 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. The following is an example of a JCL code stub for executing a job:

//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 being that cards still have "//" in columns 1 and 2.