CLIST - CLIST

CLIST (Lista de Comandos) (pronuncia-se "Lista C") é uma linguagem de programação procedural para TSO em sistemas MVS . Ele se originou no OS / 360 Release 20 e assumiu uma função secundária desde a disponibilidade do Rexx no TSO / E Versão 2. O termo CLIST também é usado para listas de comandos gravadas por usuários do NetView .

Em sua forma básica, um programa CLIST (ou "CLIST" para abreviar) pode assumir a forma de uma lista simples de comandos a serem executados em seqüência estrita (como um arquivo de lote DOS (* .bat)). No entanto, CLIST também possui lógica If-Then-Else, bem como construções de loop.

CLIST é uma linguagem interpretada . Ou seja, o computador deve traduzir um CLIST toda vez que o programa for executado. CLISTs, portanto, tendem a ser mais lentos do que programas escritos em linguagens compiladas como COBOL , FORTRAN ou PL / 1 . (Um programa escrito em uma linguagem compilada é traduzido uma vez para criar um "módulo de carregamento" ou executável .)

CLIST pode ler / gravar arquivos MVS e ler / gravar de / para um terminal TSO. Ele pode ler parâmetros do chamador e também possui uma função para armazenar variáveis ​​globais e passá-las entre CLISTs. Um CLIST também pode chamar um programa aplicativo MVS (escrito em COBOL ou PL / I , por exemplo). CLISTs podem ser executados em segundo plano (executando JCL que executa o programa de controle TSO (IKJEFT01)). Telas e menus de E / S do TSO usando serviços de diálogo ISPF podem ser exibidos por CLISTs.

Compare a função de CLIST com a fornecida por REXX .

Programas de exemplo

PROC 0
WRITE HELLO WORLD!

Adicionando lógica If-Then-Else:

   /********************************************************************/
   /*  MULTI-LINGUAL "HELLO WORLD" PROGRAM.                            */
   /*                                                                  */
   /*  THIS CLIST, STORED AS USERID.TSO.CLIST(TEST), CAN BE INVOKED    */
   /*  FROM THE ISPF COMMAND LINE AS SHOWN IN THE FOLLOWING EXAMPLE:   */
   /*                                                                  */
   /*     COMMAND ===> TSO TEST SPANISH                                */
   /*                                                                  */
   /********************************************************************/
   PROC 1 LANGUAGE
     IF &LANGUAGE = SPANISH THEN +
        WRITE HOLA, MUNDO
     ELSE IF &LANGUAGE = FRENCH THEN +
        WRITE BONJOUR, MONDE
     ELSE +
        WRITE HELLO, WORLD
   EXIT

Veja também

Notas de rodapé

Referências