Other Task Initiation Statements

The other WFL statements that initiate tasks include:

  • ARCHIVE for archiving files (using the DIFFERENTIAL, FULL, INCREMENTAL, MERGE, RESTORE, RESTOREADD, and ROLLOUT options)

  • BIND for invoking the Binder

  • COPY, ADD, and REPLACE for copying files

  • LOG for running the LOGANALYZER utility

  • MOVE for copying disk files from one disk family to another, and removing the original file

  • PB for running the SYSTEM/BACKUP utility

  • RESTORE, RESTOREADD, and RESTOREREPLACE for restoring files

  • START for initiating other WFL jobs from the current job

  • START AND WAIT for conditionally initiating a task

  • WRAP and UNWRAP for wrapping and unwrapping files

Tasks initiated by any of these statements are executed serially; that is, the job waits for the task to complete before continuing on to the next statement. However, any task can be made to run asynchronously by preceding the task initiation statement with the word PROCESS. Asynchronous tasks run in parallel with the job.

The START statement normally causes the job to be compiled synchronously and executed asynchronously. A PROCESS START causes both the compile and execution to occur asynchronously with the job.

An asynchronous task can also be initiated by a subroutine invocation statement that occurs within a PROCESS statement. A subroutine invocation statement normally does not initiate a task.

Example

The following example shows a simple form of the COMPILE and RUN statements:

?BEGIN JOB RUNPROG;
  COMPILE (JONES)OBJECT/ALGOL/TEST WITH ALGOL LIBRARY;
    COMPILER FILE CARD(TITLE=ALGOL/TEST ON MYPACK);
  RUN (JONES)OBJECT/ALGOL/TEST;
?END JOB.

The COMPILE statement in this example specifies that the object code file titled (JONES)OBJECT/ALGOL/TEST is to be saved. (Other variations in the COMPILE statement can be used to specify whether the object code file is to be run immediately, saved and run immediately, or whether the source file is to be compiled for syntax only.)

The line beginning COMPILER FILE CARD is a file equation that tells the ALGOL compiler the name of the source file to use as input. The RUN statement causes the program to execute. The file title specified in the RUN statement must be the title of the object code file (not the source file) of the program.