Translate

sábado, 1 de novembro de 2025

🚀☕ REXX: O “Python do Mainframe” QUE JÁ EXISTIA QUANDO A INTERNET AINDA ENGATINHAVA ☕🚀


Bellacosa Mainframe apresenta o REXX

🚀☕ REXX: O “Python do Mainframe” QUE JÁ EXISTIA QUANDO A INTERNET AINDA ENGATINHAVA ☕🚀

A linguagem lendária da IBM que transformou operadores em programadores e virou o canivete suíço do z/OS

“Enquanto muita gente hoje descobre automação com Python… o mainframe já fazia isso elegantemente com REXX há mais de 40 anos.” 😎


📜 O NASCIMENTO DE UMA LENDA

Final dos anos 70.

Mainframes dominavam o planeta corporativo:

  • bancos
  • governos
  • seguradoras
  • bolsas de valores
  • telecomunicações

Mas existia um problema gigantesco.

Programar era:

  • complexo
  • burocrático
  • lento
  • doloroso

COBOL era poderoso…
Assembler era monstruoso…
CLIST era limitado…

Foi então que surgiu:

⚡ REXX ⚡

Criado por Mike Cowlishaw nos laboratórios IBM Hursley, o REXX nasceu com uma missão quase revolucionária:

“Tornar a programação humana novamente.”

E conseguiu.


🤯 O QUE TORNAVA O REXX DIFERENTE?

Naquela época, linguagens queriam que:

  • humanos pensassem como máquinas.

O REXX fez o contrário:

  • fez a máquina entender humanos.

Resultado?

Uma linguagem:

  • limpa
  • natural
  • flexível
  • extremamente poderosa

😲 O REXX NÃO QUER SABER DE BUROCRACIA

Enquanto COBOL exigia:

01 WS-NOME      PIC X(20).
01 WS-IDADE PIC 9(03).
01 WS-SALARIO PIC 9(05)V99.

o REXX simplesmente dizia:

nome = "VAGNER"
idade = 40
salario = 99999

Pronto.
Acabou.
Sem WORKING-STORAGE.
Sem DATA DIVISION.
Sem sofrimento existencial. 😂


☕ O OPERADOR VIROU PROGRAMADOR

Aqui está uma das maiores revoluções silenciosas do mainframe.

Antes do REXX:

  • automação era território dos desenvolvedores hardcore.

Depois do REXX:

  • operadores
  • analistas
  • sysprogs
  • suporte
  • administradores

começaram a automatizar tudo.

O REXX democratizou o poder do z/OS.


🧠 O PARSE: A ARMA SECRETA DO REXX

O PARSE do REXX é quase magia negra corporativa.

Imagine receber uma linha:

USER01 PROD 1500

E transformar isso em variáveis automaticamente:

linha = "USER01 PROD 1500"

parse var linha usuario ambiente saldo

say usuario
say ambiente
say saldo

Saída:

USER01
PROD
1500

Sem SPLIT.
Sem REGEX.
Sem trauma psicológico.


🔥 REXX NO MUNDO REAL

O REXX virou a “cola universal” do z/OS.

Ele conversa com:

  • TSO
  • ISPF
  • SDSF
  • JES2
  • DB2
  • IMS
  • NetView
  • QMF

É praticamente o “multiverso da automação mainframe”.


💣 EXEMPLO REAL — GERANDO JCL AUTOMATICAMENTE

Imagine criar 100 steps manualmente…

Agora veja o REXX humilhando a tarefa:

do i = 1 to 100
say "//STEP"i "EXEC PGM=IEFBR14"
end

Boom. 💥

100 steps gerados em segundos.


😎 O REXX NÃO LIGA PARA INDENTAÇÃO

Python:

if x > 10:
print("OK")

Errou espaço?
💀 morreu.

REXX:

if x > 10 then
say "OK"

ou:

if x > 10 then
say "OK"

ou até:

IF X > 10 THEN SAY "OK"

O REXX olha pra isso e fala:

“Relaxa. Eu entendi.” 😎


👴 O SYSOP VETERANO E O REXX

Todo ambiente z/OS tem aquele sysprog lendário que:

  • sabe JES2 de cabeça
  • conversa com dumps
  • domou CICS em produção
  • tem um PDS de REXX desde 1994

E normalmente existe um dataset misterioso chamado:

SYS1.REXX.CNTL

que ninguém ousa apagar. 😂

Porque:

  • metade da automação crítica mora lá.

🧪 EXEMPLO — CONSULTANDO DATASETS

say "Digite o dataset"

pull dsn

"LISTDS '"dsn"'"

say "Consulta finalizada"

Simples.
Humano.
Objetivo.


🚀 O REXX ERA “SCRIPTING MODERNO” ANTES DO SCRIPTING MODERNO

Muita coisa atribuída hoje ao Python já existia no REXX:

  • interpretado
  • shell scripting
  • tipagem dinâmica
  • automação
  • REPL interativo
  • parsing poderoso

O REXX estava décadas à frente.


👀 EASTER EGG MAINFRAME #1

Veteranos sabem…

Existe uma entidade ancestral chamada:

IRXJCL

Quando alguém descobre isso pela primeira vez:

  • automaticamente ganha +10 em automação. 😆

🔥 EXEMPLO — REXX EXECUTANDO COMANDOS TSO

address tso

"ALLOC FI(TESTE) DA('USER.TEST') SHR"

say "Dataset alocado!"

Aqui o REXX vira praticamente:

  • operador
  • console
  • automação
  • shell scripting

tudo ao mesmo tempo.


🤯 O REXX CONSEGUE “CONVERSAR” COM O SISTEMA

E isso muda tudo.

Você pode:

  • emitir comandos
  • ler retorno
  • analisar mensagens
  • tomar decisões
  • automatizar operações

Exemplo:

address tso "LISTCAT ENT(USER.TEST)"

if rc = 0 then
say "Dataset existe"
else
say "Dataset não encontrado"

REXX + RC = automação operacional absurda.


👀 EASTER EGG MAINFRAME #2

Se um REXX começa com:

/* REXX */

veteranos imediatamente sentem cheiro de:

  • ISPF macro
  • automação antiga
  • script crítico
  • possível perigo operacional 😂

☠️ O BUG MAIS CLÁSSICO DO REXX

Como variáveis não precisam ser declaradas…

isso aqui:

total = 100
totla = total + 1

cria:

  • TOTAL
  • TOTLA

automaticamente.

E o programador passa:

  • 4 horas
  • 3 cafés
  • 2 crises existenciais

tentando descobrir o erro.


🛡️ O ANTÍDOTO SAGRADO

Veteranos usam:

signal on novalue

Isso faz o REXX reclamar de variáveis inexistentes.

Quase um:

“modo anti-digitador cansado”.


💾 O REXX VIROU A ALMA DO ISPF

Muita gente não percebe…

Mas inúmeras ferramentas ISPF:

  • painéis
  • macros
  • diálogos
  • automações

dependem fortemente de REXX.

Sem REXX:

  • muita produtividade do z/OS evaporaria.

🎮 EASTER EGG MAINFRAME #3

Existe um momento mágico na vida do mainframeiro…

Quando ele cria seu primeiro:

ISREDIT MACRO

E percebe que pode controlar o editor inteiro.

Nesse instante:

  • o usuário evolui para forma final. 😂

🚨 O REXX NO MUNDO CORPORATIVO

Grandes bancos usam REXX para:

  • automação batch
  • validação operacional
  • geração de JCL
  • monitoramento
  • administração TSO
  • integração de ferramentas

E muitos ambientes ainda possuem:

  • milhares de execs ativos.

🧠 O VERDADEIRO SEGREDO DO REXX

Não é apenas a sintaxe.

É a produtividade.

Você escreve pouco…
e resolve MUITO.


⚡ MINI LAB — REXX “HELLO MAINFRAME”

/* HELLO */

say "=== BELLACOSA MAINFRAME ==="
say "Digite seu nome:"

pull nome

say "Bem-vindo ao universo REXX," nome

say "Hoje você desbloqueou"
say "o canivete suíço do z/OS 😎"

exit 0

☕ CONCLUSÃO

O REXX não é apenas:

  • uma linguagem antiga.

Ele é:

  • um pedaço vivo da história da computação corporativa.

Uma linguagem:

  • elegante
  • poderosa
  • extremamente humana

que continua relevante porque resolve problemas reais.

Enquanto muita tecnologia moderna nasce e desaparece…

o REXX continua firme no coração do mainframe.

Porque no fim das contas:

produtividade nunca sai de moda. 😎☕


Sem comentários:

Enviar um comentário