Translate

Mostrar mensagens com a etiqueta linguagem REXX. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta linguagem REXX. Mostrar todas as mensagens

quinta-feira, 29 de março de 2007

O que é REXX?

 

Bellacosa Mainframe e o REXX

O que é REXX?

Se o COBOL é uma das linguagens mais famosas do mainframe, o REXX é uma das ferramentas mais poderosas para automação e produtividade dentro do z/OS.

Ele é simples de aprender, extremamente útil e está presente no dia a dia de operadores, desenvolvedores, administradores e sysprogs.

De forma resumida:

REXX é uma linguagem de programação criada para automatizar tarefas, executar comandos e facilitar a interação com sistemas IBM.


Uma analogia simples

Imagine que você trabalha em um escritório e precisa repetir as mesmas tarefas todos os dias:

  • abrir arquivos;

  • consultar informações;

  • executar comandos;

  • gerar relatórios;

  • copiar dados.

Você poderia fazer tudo manualmente.

Ou poderia criar um assistente que fizesse isso para você.

O REXX é esse assistente.


O que significa REXX?

REXX significa:

Restructured Extended Executor

O nome pode parecer complicado, mas a ideia era simples:

Criar uma linguagem:

  • fácil de aprender;

  • fácil de ler;

  • fácil de manter.


Quem criou o REXX?

O REXX foi criado por:

Mike Cowlishaw

Pesquisador da IBM.

Seu objetivo era desenvolver uma linguagem que pudesse ser utilizada por pessoas sem formação avançada em programação.

Por isso o REXX possui uma sintaxe extremamente amigável.


Quando surgiu?

O REXX nasceu no final da década de 1970.

Foi oficialmente divulgado pela IBM no início dos anos 1980.

Rapidamente tornou-se popular em:

  • VM/CMS;

  • MVS;

  • TSO;

  • ISPF;

  • OS/2.

Mais tarde foi padronizado pela ANSI e ISO.


Por que o REXX foi criado?

Naquela época muitas tarefas administrativas exigiam:

  • JCL;

  • CLIST;

  • programas complexos.

A IBM precisava de uma linguagem mais simples para automação.

O resultado foi o REXX.


Onde o REXX é usado?

No mundo mainframe ele aparece em:

  • TSO;

  • ISPF;

  • SDSF;

  • automação operacional;

  • administração de sistemas;

  • geração de relatórios;

  • manipulação de datasets.


O que o REXX consegue fazer?

Praticamente tudo que envolve automação.

Por exemplo:

  • executar comandos TSO;

  • abrir datasets;

  • ler arquivos;

  • criar relatórios;

  • chamar programas COBOL;

  • manipular variáveis;

  • processar textos;

  • interagir com usuários.


Primeiro programa REXX

Exemplo clássico:

SAY 'Olá Mundo'

Resultado:

Olá Mundo

Simples assim.


Variáveis em REXX

Uma das características mais famosas é que não é necessário declarar variáveis.

Exemplo:

NOME = 'Bellacosa'

SAY NOME

Resultado:

Bellacosa

Fazendo cálculos

A = 10
B = 20

C = A + B

SAY C

Resultado:

30

Entrada de dados

O programa pode perguntar algo ao usuário.

SAY 'Digite seu nome'

PULL NOME

SAY 'Bem-vindo' NOME

Estruturas de decisão

Semelhante a outras linguagens.

IDADE = 18

IF IDADE >= 18 THEN
   SAY 'Maior de idade'
ELSE
   SAY 'Menor de idade'

Estruturas de repetição

Exemplo:

DO I = 1 TO 5
   SAY I
END

Resultado:

1
2
3
4
5

Executando comandos TSO

Aqui está uma das maiores forças do REXX.

Exemplo:

ADDRESS TSO

"LISTCAT LEVEL(MEU.DATASET)"

O script executa diretamente um comando TSO.


Integração com ISPF

O REXX conversa facilmente com o ISPF.

Pode:

  • abrir painéis;

  • chamar menus;

  • editar datasets;

  • navegar por telas.

Exemplo:

ADDRESS ISPEXEC

"DISPLAY PANEL(MEUPAIN)"

Manipulação de datasets

É possível:

  • criar datasets;

  • listar datasets;

  • ler datasets;

  • alterar datasets.

Automatizando tarefas que normalmente seriam manuais.


Integração com SDSF

REXX também pode acessar informações do SDSF.

Por exemplo:

  • jobs ativos;

  • spool;

  • status de execução;

  • mensagens do sistema.

Muito utilizado por operadores.


Vantagens do REXX

Fácil aprendizado

Uma das linguagens mais amigáveis do ambiente mainframe.


Pouca burocracia

Não exige declarações complexas.


Grande integração

Funciona com:

  • TSO;

  • ISPF;

  • SDSF;

  • z/OS.


Excelente para automação

Reduz tarefas repetitivas.


Desvantagens

Não substitui COBOL

COBOL continua sendo melhor para aplicações corporativas complexas.


Menor desempenho

Não foi criado para processamento pesado.


Dependência do ambiente

Grande parte do seu poder vem da integração com o z/OS.


Curiosidades incríveis

1. Muitos produtos IBM utilizam REXX

Ferramentas administrativas frequentemente possuem scripts REXX internos.


2. Existe REXX fora do Mainframe

Ele também foi usado em:

  • OS/2;

  • AmigaOS;

  • Windows;

  • Linux.


3. Um operador pode economizar horas de trabalho

Automatizando tarefas repetitivas com poucos comandos.


4. Muitos Sysprogs consideram REXX indispensável

Ele é uma das linguagens mais utilizadas para administração do z/OS.


Exemplos reais de uso

Um script REXX pode:

Verificar espaço em disco

Consultar datasets e gerar relatório.

Monitorar jobs

Verificar jobs em ABEND.

Criar relatórios

Gerar informações operacionais automaticamente.

Automatizar comandos

Executar dezenas de comandos sem intervenção humana.

Erros comuns de iniciantes

"REXX é COBOL"

Não.

São linguagens com objetivos diferentes.


"REXX é apenas uma linguagem de script"

Ele é muito mais poderoso do que a maioria imagina.


"Ninguém usa mais"

Pelo contrário.

REXX continua amplamente utilizado em ambientes z/OS.


Quem usa REXX?

  • Operadores Mainframe

  • Programadores COBOL

  • Analistas de Suporte

  • Sysprogs

  • Administradores RACF

  • Especialistas CICS

  • Administradores DB2


Por que aprender REXX?

Porque ele oferece uma das maneiras mais rápidas de começar a programar no mainframe.

Com poucos comandos você aprende:

  • lógica;

  • automação;

  • TSO;

  • ISPF;

  • administração do z/OS.


Conclusão

O REXX é uma das linguagens mais importantes e produtivas do universo mainframe.

Criado para ser simples e poderoso, ele permite automatizar tarefas, executar comandos e integrar diversos componentes do z/OS.

Para quem está começando na plataforma IBM Z, aprender REXX é frequentemente o caminho mais rápido para ganhar produtividade e compreender como o ambiente mainframe realmente funciona.