☕ Um Café no Bellacosa Mainframe
Gostou do conteúdo? Ajude a manter o café quente, o COBOL compilando e o mainframe acordado. 😄
☕ Pague um café ao Bellacosa

Translate

Mostrar mensagens com a etiqueta historia. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta historia. Mostrar todas as mensagens

domingo, 4 de outubro de 2026

IBM NOS ANOS 1980: O DIA EM QUE O MAINFRAME VIROU PEDRA — E DR. STONE PRECISOU RECONSTRUIR A INFORMÁTICA!

Bellacosa Mainframe e a Crise no Mundo Mainframe nos anos 1980 

 

☕ UM CAFÉ NO BELLACOSA MAINFRAME

IBM NOS ANOS 1980: O DIA EM QUE O MAINFRAME VIROU PEDRA — E DR. STONE PRECISOU RECONSTRUIR A INFORMÁTICA!

A incrível história do System/370, do misterioso S/380 que nunca existiu, do antitruste americano, da revolução dos microcomputadores, do MS-DOS, dos clones e do mundo que mudou enquanto a IBM tentava sobreviver.

Bellacosa Mainframe — Arqueologia da Computação, COBOL, Tecnologia e os Fantasmas dos Sistemas Legados



Prólogo — Dez bilhões por cento de ciência, COBOL e café!

Imagine a seguinte situação.

Estamos em um centro de processamento de dados no início dos anos 1980.

Uma imensa sala climatizada abriga computadores IBM, unidades de discos, fitas magnéticas e terminais 3270. Operadores acompanham consoles, técnicos inspecionam equipamentos e programadores COBOL corrigem programas que movimentam milhões de registros.

O ambiente parece saído de uma instalação científica ultrassecreta.

De repente, uma misteriosa luz atravessa o planeta e transforma todos os profissionais da informática em estátuas de pedra.

Milhares de anos depois, Senku Ishigami, o extraordinário protagonista de Dr. Stone, desperta diante das ruínas daquele antigo CPD.

Ao lado de uma máquina IBM System/370, encontra uma caixa de cartões perfurados, uma fita magnética e um manual de COBOL.

Seu primeiro desafio é descobrir por que uma civilização capaz de construir computadores gigantescos decidiu colocar máquinas cada vez menores sobre as mesas dos funcionários.

Seu segundo desafio é ainda mais difícil: compreender como a empresa que dominava a informática mundial acabou enfrentando uma das maiores crises de sua história.

E o terceiro?

Descobrir por que nunca existiu um IBM System/380!

Bem-vindos ao Reino da Ciência Mainframe!

Nesta aventura, cada capítulo será uma experiência histórica. Vamos reconstruir os acontecimentos utilizando documentos, lógica, tecnologia e algumas boas doses de curiosidade.

Observação: Senku e os demais personagens de Dr. Stone aparecem aqui como recursos narrativos de uma aventura imaginária. Os acontecimentos históricos são reais; suas intervenções no CPD são ficcionais.



Capítulo I — 1964: A primeira grande fórmula da civilização IBM

Antes de investigar a crise dos anos 1980, precisamos voltar a 7 de abril de 1964.

Naquela data, a IBM anunciou o System/360, uma família de computadores que ajudaria a redefinir o conceito de arquitetura de sistemas.

Antes dele, organizações frequentemente enfrentavam dificuldades significativas ao migrar aplicações entre computadores de diferentes classes.

A IBM propôs uma solução ambiciosa: uma família de máquinas que compartilhassem uma arquitetura compatível.

Isso permitiria que uma organização começasse com um equipamento menor e, conforme suas necessidades aumentassem, migrasse para outro mais poderoso preservando grande parte de seu investimento em software.

Para um programador COBOL, a ideia era extraordinária.

Imagine desenvolver um sistema de folha de pagamento contendo milhares de linhas de código.

Se a empresa precisasse adquirir um computador maior, seria desejável aproveitar o programa existente, em vez de reconstruí-lo do zero.

A compatibilidade arquitetural passou a ser uma das grandes vantagens dos computadores IBM.

A fórmula científica da compatibilidade

Podemos representar essa estratégia de maneira simplificada:

Arquitetura estável + evolução tecnológica + preservação dos programas = proteção do investimento empresarial.

É importante destacar que compatibilidade não significa que todo programa executaria em qualquer modelo sem adaptações.

Sistemas operacionais, periféricos, requisitos de memória e características específicas das instalações também precisavam ser considerados.

Mas a direção estava estabelecida.

O System/360 não era simplesmente um computador. Era uma proposta de continuidade tecnológica.

Em 1970, essa evolução prosseguiu com o System/370.

E começava nossa primeira investigação.



Capítulo II — O enigma do System/380: onde está o computador desaparecido?

Imagine Senku examinando uma sequência de documentação técnica.

System/360.

System/370.

System/390.

Ele interrompe a investigação.

Onde foi parar o 380?

A primeira hipótese seria imaginar que a IBM planejou um System/380, mas cancelou o projeto por causa da crise econômica.

A segunda hipótese seria atribuir o desaparecimento ao processo antitruste americano.

A terceira seria imaginar que o sucesso do IBM PC obrigou a empresa a abandonar a nomenclatura.

Mas ciência não funciona com suposições transformadas em certezas.

Precisamos examinar os fatos.

A evolução real

Depois do System/370, a IBM continuou desenvolvendo diversas famílias de máquinas.

Entre elas encontramos:

  • IBM 3031, 3032 e 3033.

  • IBM 3081 e outros modelos da família 308x.

  • IBM 3090, anunciado em 1985.

  • IBM System/390, apresentado em 1990.

Ao mesmo tempo, a arquitetura evoluiu.

A introdução e expansão do endereçamento virtual, os aperfeiçoamentos de processamento e as novas arquiteturas ESA contribuíram para manter a plataforma competitiva.

Os computadores ficaram mais rápidos e sofisticados.

A IBM não interrompeu a evolução técnica entre o System/370 e o System/390.

O que aconteceu foi uma evolução utilizando diferentes nomes comerciais, modelos de processadores e extensões arquiteturais.

Atenção, jovem aprendiz de COBOL: não existe evidência histórica suficiente para afirmar que a ausência do nome System/380 foi causada por uma decisão política ou por um projeto secreto cancelado.

O System/380 é um excelente enigma para um artigo de arqueologia tecnológica, mas não devemos inventar uma explicação documental.

Curiosidade científica

O IBM 3081 introduziu o Thermal Conduction Module, uma tecnologia sofisticada de encapsulamento e dissipação térmica.

Isso nos lembra de uma questão fundamental: computadores não evoluem apenas através de linguagens de programação.

Materiais, eletrônica, refrigeração, memória e armazenamento também determinam o desempenho dos sistemas.

Uma excelente aula de engenharia para o Reino da Ciência!



Capítulo III — 1969: O governo americano coloca a IBM no banco dos réus

Agora precisamos investigar um conflito muito anterior à explosão dos PCs.

Em 17 de janeiro de 1969, o Departamento de Justiça dos Estados Unidos iniciou uma ação antitruste contra a IBM.

A acusação central envolvia alegações de monopolização ilegal de um mercado de computadores de uso geral.

Na época, a IBM exercia enorme influência sobre a informática empresarial.

Fornecia processadores, sistemas operacionais, programas, periféricos, manutenção e serviços.

Mas uma pergunta precisava ser respondida:

Dominar um mercado é automaticamente ilegal?

Não.

A legislação antitruste americana diferencia a existência de poder de mercado das práticas ilegais utilizadas para adquiri-lo ou preservá-lo.

Uma empresa pode conquistar grande participação porque oferece produtos excelentes.

Outra questão é utilizar determinadas condutas para excluir ilegalmente seus concorrentes.

O governo examinou práticas comerciais da IBM e sua influência sobre fabricantes de equipamentos compatíveis.

Imagine uma empresa que desejasse utilizar uma CPU IBM com discos de outro fabricante.

A compatibilidade de interfaces podia determinar se essa escolha seria economicamente viável.

Fabricantes independentes dependiam de informações técnicas para desenvolver produtos capazes de trabalhar com equipamentos IBM.

Uma descoberta importante: o caso de 1956

A história é mais complexa do que parece.

Já existia um acordo judicial antitruste de 1956, relacionado a uma disputa anterior.

Portanto, não devemos confundir três acontecimentos:

  1. O acordo antitruste de 1956.

  2. O processo iniciado em 1969.

  3. A posterior revisão de restrições aplicáveis à empresa.

Em 1969, a IBM também anunciou a separação comercial de determinados softwares e serviços dos preços de equipamentos, prática conhecida como unbundling.

Essa mudança teve enorme significado para o surgimento de uma indústria independente de software.

É comum associá-la ao ambiente antitruste, mas seria simplista afirmar que o processo iniciado naquele ano foi sua única causa.

O mercado e as decisões empresariais já estavam passando por transformações.

O surpreendente final do julgamento

Em 8 de janeiro de 1982, o governo americano decidiu abandonar a ação iniciada em 1969.

Não houve uma condenação judicial final da IBM naquele processo.

O Departamento de Justiça avaliou que não conseguiria demonstrar adequadamente as acusações de monopolização ilegal apresentadas.

A empresa não saiu desse episódio com uma sentença condenatória, embora o longo processo tenha produzido consequências organizacionais, jurídicas e estratégicas.

Nosso primeiro experimento científico está concluído.

Hipótese: a IBM foi condenada por monopolizar a informática em 1982.

Resultado: hipótese falsa.



Capítulo IV — 1973 e 1979: o petróleo invade o CPD

Agora Senku encontra uma informação aparentemente desconectada da informática.

Crise do petróleo.

O que barris de petróleo têm a ver com computadores IBM?

Muito mais do que parece.

Em 1973, o embargo petrolífero árabe, associado ao contexto da Guerra do Yom Kippur, provocou uma grande perturbação no mercado internacional de energia.

O preço do petróleo disparou.

Em 1979, a Revolução Iraniana contribuiu para um segundo grande choque energético.

As consequências atingiram transportes, fábricas, comércio e investimentos.

Os governos enfrentavam aumento de preços, dificuldades econômicas e crescimento reduzido.

Uma combinação particularmente desagradável recebeu o nome de estagflação.

Era possível ter inflação elevada e, simultaneamente, uma economia enfraquecida.

Para empresas que dependiam de grandes investimentos tecnológicos, a situação criava dificuldades.

Quanto custava manter um mainframe?

Não bastava comprar o processador.

Uma instalação típica também precisava considerar:

  • Equipamentos de armazenamento e comunicação.

  • Energia elétrica e refrigeração.

  • Manutenção especializada.

  • Sistemas operacionais e software.

  • Salários de operadores e programadores.

  • Espaço físico.

  • Expansão de capacidade.

  • Contratos de aquisição ou locação.

Naturalmente, os custos variavam conforme o porte e o contrato.

Mas, quando os juros aumentavam e os investimentos se tornavam mais difíceis, diretores financeiros começavam a analisar alternativas.

Um sistema central continuava sendo indispensável para determinadas atividades.

Porém, seria realmente necessário utilizar recursos centrais para produzir uma simples planilha departamental?

Essa pergunta abriu espaço para os microcomputadores.

A inflação não foi igual no planeta inteiro

Aqui precisamos corrigir outro mito.

Os Estados Unidos enfrentaram inflação elevada, chegando perto de 15% na medição anual durante 1980.

Mas isso não representa hiperinflação mundial.

Hiperinflação possui significado econômico específico e costuma ser associada a aumentos de preços superiores a 50% ao mês.

Na América Latina, alguns países enfrentaram episódios muito mais extremos.

Brasil, Argentina, Bolívia e Peru viveram graves crises inflacionárias em períodos distintos.

A crise da dívida externa latino-americana, especialmente a partir de 1982, agravou os problemas regionais.

Portanto, o impacto econômico sobre uma instalação IBM no Brasil podia ser muito diferente daquele enfrentado por uma empresa americana.

Uma aquisição financiada em moeda estrangeira representava desafios adicionais para uma organização brasileira.

Dica para o programador COBOL

Quando estudar sistemas legados, não examine apenas a tecnologia.

Investigue também o ambiente econômico em que foram construídos.

Muitos programas foram desenvolvidos para atender restrições muito específicas de custo, armazenamento, processamento e legislação.

A história econômica frequentemente explica decisões de arquitetura que parecem estranhas quando observadas quarenta anos depois.


Capítulo V — 1977: os computadores pequenos começam a conquistar o planeta

Estamos em 1977.

Enquanto os grandes sistemas empresariais continuam operando, uma revolução acontece fora dos centros de processamento de dados.

O Apple II, o Commodore PET e o TRS-80 aparecem como representantes de uma nova geração comercial de microcomputadores.

Eram equipamentos muito mais modestos que os mainframes.

Utilizavam processadores de 8 bits, pequenas quantidades de memória e armazenamento limitado.

Mas tinham uma característica revolucionária.

Uma pessoa podia possuir seu próprio computador.

Antes, acessar poder computacional muitas vezes significava depender de uma universidade, empresa ou instituição.

Agora, estudantes, pequenos empresários e entusiastas podiam programar seus próprios equipamentos.

O BASIC tornou-se uma das portas de entrada para a computação.

Um simples programa podia despertar o interesse de futuros engenheiros.

10 PRINT "BELLACOSA MAINFRAME"
20 PRINT "BEM-VINDO AO REINO DA CIENCIA"
30 GOTO 10

Naturalmente, o pequeno computador não conseguiria substituir diretamente um grande sistema bancário.

Mas isso não era necessário para transformar o mercado.

O microcomputador precisava apenas resolver problemas suficientemente importantes para seus usuários.

O segredo das planilhas eletrônicas

Em 1979, surgiu o VisiCalc para o Apple II.

A possibilidade de criar e recalcular planilhas eletrônicas transformou a utilização comercial dos computadores pessoais.

Antes, muitos cálculos departamentais dependiam de processos manuais ou solicitações ao departamento de informática.

Agora, um profissional podia alterar valores e observar resultados imediatamente.

No começo dos anos 1980, o Lotus 1-2-3 ajudaria a consolidar esse mercado nos IBM PCs e compatíveis.

Esse foi um grande desafio cultural para os CPDs.

Os departamentos não queriam necessariamente abandonar o mainframe.

Queriam autonomia.

E autonomia era algo que as novas máquinas começavam a proporcionar.


Capítulo VI — 1981: a IBM cria o PC e abre a caixa de Pandora

Em 12 de agosto de 1981, a IBM apresentou o Personal Computer 5150.

O equipamento utilizava o processador Intel 8088.

Embora fosse associado à família x86 de 16 bits, o 8088 possuía barramento externo de dados de 8 bits.

Esse detalhe contribuiu para viabilizar um projeto baseado em componentes disponíveis comercialmente.

O IBM PC não foi o primeiro computador pessoal da história.

Mas o nome IBM ajudou a legitimar o uso do PC dentro das empresas.

A equipe liderada por Don Estridge, em Boca Raton, desenvolveu o produto utilizando uma abordagem incomum para os padrões tradicionais da companhia.

Em vez de criar internamente cada componente, o projeto incorporou tecnologias de diferentes fornecedores.

A arquitetura aberta

A IBM publicou documentação técnica que facilitava o desenvolvimento de placas, periféricos e programas para o PC.

Essa decisão ajudou a criar um ecossistema extraordinário.

Entretanto, também abriu oportunidades para concorrentes.

Empresas começaram a desenvolver computadores capazes de executar programas destinados ao IBM PC.

Nascia a grande expansão dos compatíveis.

É importante lembrar que arquitetura aberta não significava autorização para copiar indiscriminadamente o código do BIOS.

Fabricantes precisavam respeitar os direitos autorais e desenvolver implementações próprias.

A engenharia reversa independente teve papel importante nesse processo.

A ironia histórica

A IBM criou uma plataforma comercialmente bem-sucedida.

Mas não conseguiu manter controle exclusivo sobre todos os componentes que definiriam seu futuro.

Processadores Intel, sistemas operacionais Microsoft e equipamentos fabricados por outras empresas passaram a compartilhar um padrão técnico.

O mercado começou a falar cada vez mais em computadores compatíveis com IBM PC, e não necessariamente em computadores fabricados pela IBM.


Capítulo VII — MS-DOS: o pequeno sistema operacional que mudou o equilíbrio de poder

O universo dos microcomputadores também estava passando por uma revolução em software.

Gary Kildall e a Digital Research haviam desenvolvido o CP/M, que se tornou importante na primeira geração de microcomputadores.

Quando a IBM procurou um sistema operacional para seu novo PC, as negociações não resultaram no fornecimento do CP/M como sistema principal da máquina.

A Microsoft acabou fornecendo a solução que seria conhecida como PC DOS na versão comercializada pela IBM.

Sua origem estava ligada ao 86-DOS, desenvolvido por Tim Paterson na Seattle Computer Products.

O MS-DOS tornou-se uma das bases da indústria de PCs compatíveis.

Imagine a seguinte tela:

C:\>DIR

C:\>COPY CLIENTES.DAT B:\

C:\>TYPE RELATORIO.TXT

Um usuário podia navegar pelo disco, copiar arquivos e executar aplicações sem conhecer JCL, TSO ou a estrutura de um sistema operacional mainframe.

É claro que isso não significava possuir os mesmos recursos de segurança, compartilhamento e processamento corporativo.

Mas a simplicidade relativa de acesso ajudou a conquistar milhões de usuários.

O verdadeiro segredo da Microsoft

O mercado de sistemas operacionais não ficou restrito aos computadores fabricados pela IBM.

A Microsoft podia fornecer seu software a outros fabricantes de PCs compatíveis.

Quanto mais máquinas compatíveis eram vendidas, maior se tornava o mercado potencial de aplicações para MS-DOS.

Esse processo criou um efeito de rede.

Mais computadores atraíam mais desenvolvedores.

Mais programas tornavam a plataforma mais interessante para novos compradores.

O resultado foi uma extraordinária expansão do ecossistema PC.


Capítulo VIII — 1986: os clones desafiam o criador

A Compaq tornou-se um dos grandes símbolos dessa revolução.

Em 1983, comercializou um computador portátil compatível com o IBM PC.

Mas o acontecimento mais emblemático veio em 1986.

A empresa apresentou o Deskpro 386, utilizando o processador Intel 80386 antes de a IBM lançar um PC equivalente.

O 80386 introduzia recursos avançados de uma arquitetura x86 de 32 bits.

Para o mercado, a mensagem era poderosa.

Uma empresa que não havia criado originalmente o padrão podia liderar sua evolução tecnológica.

A IBM continuava sendo uma grande fabricante.

Mas já não controlava sozinha o ritmo dos lançamentos.

O PS/2 e a tentativa de reorganização

Em 1987, a IBM apresentou a família Personal System/2.

Alguns modelos utilizavam a nova Micro Channel Architecture, conhecida como MCA.

A tecnologia oferecia características avançadas, mas também exigia novas placas de expansão e envolvia condições de licenciamento.

Fabricantes de compatíveis resistiram à dependência dessa arquitetura.

O setor continuou desenvolvendo alternativas baseadas em padrões mais amplamente adotados.

A batalha dos PCs já não era apenas uma disputa por velocidade de processadores.

Era uma guerra por padrões industriais.

Curiosidade

É perfeitamente possível que um fabricante crie uma tecnologia excelente e ainda assim não consiga transformá-la no padrão dominante.

Compatibilidade, preço, licenciamento e quantidade de usuários podem ser tão importantes quanto desempenho.

Essa é uma lição que continua válida para hardware, sistemas operacionais, APIs e plataformas de software.


Capítulo IX — Laboratório Senku: construindo nosso primeiro programa COBOL

Finalmente chegamos ao laboratório.

Imagine que estamos em 1985.

Um departamento utiliza microcomputadores para preparar informações locais, mas o processamento corporativo permanece no mainframe.

Nosso desafio será construir um pequeno programa COBOL responsável por calcular o saldo final de uma conta fictícia.

O programa deverá:

  1. Definir um saldo inicial.

  2. Aplicar um depósito.

  3. Subtrair um pagamento.

  4. Apresentar o resultado.

  5. Identificar se o saldo ficou negativo.

Não precisamos de CICS ou Db2 para compreender o conceito inicial.

Vamos começar com COBOL tradicional.

Experimento 1 — O programa

       IDENTIFICATION DIVISION.
       PROGRAM-ID. LAB1985.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01 WS-SALDO-INICIAL PIC 9(5)V99.
       01 WS-DEPOSITO     PIC 9(5)V99.
       01 WS-PAGAMENTO    PIC 9(5)V99.
       01 WS-SALDO-FINAL  PIC S9(6)V99.
       01 WS-EDITADO      PIC -ZZZZZ9.99.

       PROCEDURE DIVISION.

           MOVE 1500.00 TO WS-SALDO-INICIAL
           MOVE  350.00 TO WS-DEPOSITO
           MOVE  275.00 TO WS-PAGAMENTO

           COMPUTE WS-SALDO-FINAL =
               WS-SALDO-INICIAL
               + WS-DEPOSITO
               - WS-PAGAMENTO
           END-COMPUTE

           MOVE WS-SALDO-FINAL TO WS-EDITADO

           DISPLAY "BELLACOSA MAINFRAME"
           DISPLAY "LABORATORIO COBOL 1985"
           DISPLAY "SALDO FINAL: " WS-EDITADO

           IF WS-SALDO-FINAL < ZERO
               DISPLAY "ATENCAO: SALDO NEGATIVO"
           ELSE
               DISPLAY "SALDO NAO NEGATIVO"
           END-IF

           GOBACK.

Este exemplo utiliza convenções de código em formato fixo, típicas de programas COBOL tradicionais. As linhas de código começam na área apropriada para esse formato.

Experimento 2 — Entendendo a estrutura

IDENTIFICATION DIVISION

Identifica o programa.

Nesse caso, seu nome é LAB1985.

DATA DIVISION

Define os dados utilizados pelo programa.

WORKING-STORAGE SECTION

Declara variáveis disponíveis durante a execução.

PROCEDURE DIVISION

Contém as instruções que realizam o processamento.

Experimento 3 — O significado do PIC

Observe:

01 WS-DEPOSITO PIC 9(5)V99.

O 9(5) representa cinco posições numéricas inteiras.

O V99 representa duas posições decimais implícitas.

Isso permite armazenar valores com duas casas decimais sem manter um ponto decimal físico na representação numérica.

Para cálculos financeiros simples, esse conceito é fundamental.

Observe também:

01 WS-SALDO-FINAL PIC S9(6)V99.

O S indica que o campo admite sinal.

Escolhemos um campo assinado porque o resultado pode ser negativo.

Em um sistema financeiro real, os tipos de dados devem ser escolhidos com atenção à amplitude dos valores, precisão, arredondamento, sinal e possíveis condições de erro.

Experimento 4 — Calculando o resultado

Nosso processamento é:

Saldo inicial: 1.500,00.

Depósito: 350,00.

Pagamento: 275,00.

Resultado:

1.500,00 + 350,00 − 275,00 = 1.575,00.

O COBOL executa o cálculo com COMPUTE.

O campo WS-EDITADO prepara a representação para exibição, incluindo o ponto decimal e o sinal quando necessário.

Experimento 5 — Testando situações especiais

Agora altere o valor do pagamento para 2.000,00.

O resultado será negativo.

O programa deverá informar essa condição.

Esse exercício demonstra um princípio essencial da programação empresarial:

Um programa não precisa apenas calcular resultados corretos. Precisa tratar situações excepcionais de maneira previsível.

Experimento 6 — Como executar num ambiente mainframe

Em um ambiente de estudos com z/OS, o processo geral seria:

  1. Acessar o ambiente autorizado de desenvolvimento.

  2. Criar um membro contendo o código-fonte COBOL.

  3. Verificar se o código está no formato esperado pelo compilador.

  4. Utilizar um procedimento de compilação e linkedição disponível na instalação.

  5. Executar o programa.

  6. Consultar o resultado pelo SDSF ou ferramenta equivalente.

  7. Comparar a saída obtida com o resultado esperado.

  8. Corrigir eventuais erros e repetir o teste.

Os nomes de bibliotecas, compiladores e procedimentos variam entre ambientes.

Por isso, o exemplo não presume um JCL universal que funcionaria automaticamente em qualquer instalação.

Experimento 7 — O que mudou desde 1985?

Atualmente, o mesmo exercício pode ser desenvolvido utilizando ferramentas modernas de edição e integração com ambientes mainframe.

Mas a lógica fundamental permanece reconhecível.

Variáveis, regras de negócio, cálculos, validações e testes continuam sendo conceitos indispensáveis.

O equipamento evoluiu.

A disciplina de programação permaneceu.


Capítulo X — MVS, CICS, VSAM e Db2: os guardiões do Reino Mainframe

Mas por que um programa COBOL empresarial continuaria sendo executado em um mainframe se os PCs estavam ficando cada vez melhores?

A resposta aparece quando examinamos o problema da escala.

Imagine que nosso programa de laboratório precise processar uma única conta.

Praticamente qualquer computador pessoal moderno consegue realizar essa operação.

Agora imagine milhões de contas, usuários simultâneos, transações concorrentes, auditorias, registros persistentes e regras rigorosas de integridade.

A situação é completamente diferente.

MVS

O MVS oferecia os recursos fundamentais de gerenciamento necessários à operação de grandes sistemas IBM.

Processamento em lote, gerenciamento de recursos e execução de aplicações faziam parte desse ambiente.

CICS

O CICS permitia construir e executar aplicações transacionais.

Pense em operações bancárias, consultas, atualizações e interação de múltiplos usuários.

O CICS se tornou uma peça extremamente importante no mundo corporativo.

VSAM

O VSAM fornecia métodos organizados de armazenamento e acesso a dados.

Arquivos sequenciais, indexados e outras estruturas podiam atender diferentes necessidades das aplicações.

Db2

O Db2, introduzido comercialmente na década de 1980, representou um passo importante na adoção de bancos de dados relacionais no ambiente IBM.

Seu modelo permitia utilizar SQL para consultar e manipular dados.

Para programadores COBOL, isso significava novas possibilidades de integração entre aplicações e gerenciamento de dados.

A descoberta fundamental

Mainframes e microcomputadores não eram apenas versões grandes e pequenas da mesma ideia.

Cada plataforma apresentava características, objetivos e limitações diferentes.

A evolução da informática empresarial acabaria combinando múltiplas tecnologias.

O mundo cliente-servidor estava se aproximando.


Capítulo XI — Guerra Fria: a ciência dividida pelo Muro de Berlim

Enquanto a IBM enfrentava transformações comerciais, a Europa estava dividida.

De um lado, os países associados ao bloco ocidental.

Do outro, a União Soviética e seus aliados.

A computação tinha enorme importância militar, científica e econômica.

O desenvolvimento de semicondutores, sistemas operacionais, equipamentos de comunicação e computadores avançados estava associado também a políticas estratégicas.

Os países socialistas possuíam suas próprias indústrias de computadores.

A Alemanha Oriental, por exemplo, desenvolveu equipamentos comercializados pela Robotron.

Na União Soviética e em países aliados, a linha ES EVM procurava fornecer uma família de computadores compatíveis, em diferentes graus, com tecnologias ocidentais.

Portanto, não seria correto afirmar que a computação simplesmente não existia no bloco socialista.

O desafio era outro.

As restrições de acesso a determinadas tecnologias, as estruturas econômicas, a coordenação industrial e as dificuldades de produção afetavam sua capacidade de competir em vários segmentos.

1985: Gorbachev chega ao poder

Mikhail Gorbachev assumiu a liderança soviética em 1985.

Suas políticas de perestroika e glasnost buscavam promover reformas econômicas e maior abertura.

Mas os problemas estruturais eram profundos.

A insatisfação social crescia em diversos países da Europa Oriental.

Movimentos políticos exigiam transformações.

Em 9 de novembro de 1989, o Muro de Berlim foi aberto.

Imagens de cidadãos atravessando a fronteira e celebrando sobre o muro tornaram-se símbolos de uma mudança histórica.

Em 1990, a Alemanha foi reunificada.

Em 1991, a União Soviética deixou de existir.

O impacto sobre a informática

A abertura de novos mercados criava oportunidades para empresas ocidentais.

Instituições financeiras, organizações públicas e empresas precisavam modernizar seus sistemas.

Computadores pessoais, redes, servidores e plataformas corporativas participariam dessa transformação.

Mas existe um detalhe indispensável para nossa investigação.

A queda do Muro não causou a crise da IBM.

Os problemas competitivos da empresa já estavam em desenvolvimento.

Os acontecimentos políticos alteraram o cenário internacional, mas não explicam isoladamente as dificuldades comerciais da companhia.

Um cientista cuidadoso separa acontecimentos simultâneos de relações causais comprovadas.


Capítulo XII — 1990: o System/390 chega para impedir a petrificação

O ano de 1990 marcou a apresentação da família IBM System/390.

A arquitetura mainframe continuava evoluindo.

O lançamento representava a continuidade de décadas de compatibilidade e aperfeiçoamentos.

Entretanto, a IBM enfrentava um problema que não podia ser resolvido apenas com processadores mais rápidos.

O mercado empresarial estava mudando.

Clientes adotavam redes locais, sistemas Unix, PCs compatíveis, bancos de dados e servidores departamentais.

Novos fornecedores competiam em segmentos anteriormente associados aos grandes fabricantes.

A IBM possuía tecnologias extraordinárias, mas precisava adaptar sua organização, estratégia comercial e estrutura de custos.

As dificuldades financeiras mais graves apareceriam no início dos anos 1990.

Em 1993, a companhia registraria um prejuízo anual de aproximadamente 8 bilhões de dólares.

O impacto foi extraordinário para uma empresa que durante décadas simbolizara o poder da indústria informática.

A recuperação exigiria uma transformação profunda.

E essa história merece outro capítulo inteiro.


Capítulo XIII — Dez curiosidades para o arqueólogo mainframe

1. O mainframe nunca dependeu apenas de força bruta

A importância de um grande sistema envolve também disponibilidade, integridade, segurança, administração de recursos e processamento simultâneo.

2. Compatibilidade é um patrimônio invisível

Milhares de programas antigos continuam relevantes porque representam regras empresariais construídas ao longo de décadas.

3. O IBM PC não nasceu dentro do modelo tradicional de desenvolvimento da IBM

A equipe de Boca Raton trabalhou com maior autonomia e aproveitou componentes externos para acelerar o projeto.

4. O 8088 era um processador com características de 16 bits e barramento externo de 8 bits

Esse detalhe ajuda a explicar escolhas de engenharia do PC original.

5. A revolução dos microcomputadores começou antes do IBM PC

Os equipamentos de 1977 e seus antecessores já demonstravam o potencial da computação pessoal.

6. A Compaq antecipou a IBM no lançamento de um PC baseado no 80386

Isso simbolizou a perda do controle exclusivo sobre a evolução do padrão PC.

7. A IBM foi processada, mas não condenada no caso antitruste encerrado em 1982

É um dos detalhes jurídicos mais frequentemente apresentados incorretamente.

8. A inflação americana não foi hiperinflação

A expressão deve ser utilizada com precisão histórica e econômica.

9. O Muro de Berlim caiu antes do colapso da União Soviética

Os acontecimentos ocorreram em 1989 e 1991, respectivamente.

10. O COBOL atravessou todas essas transformações

O valor das aplicações empresariais preservadas ajuda a explicar a extraordinária longevidade da linguagem.


Capítulo XIV — Dez dicas para quem está começando no COBOL

Primeira dica: compreenda a evolução histórica. Conhecer System/360, System/370 e System/390 ajuda a entender por que a compatibilidade é tão valorizada.

Segunda dica: aprenda as quatro divisões tradicionais do COBOL. Identification, Environment, Data e Procedure formam a estrutura clássica da linguagem, embora programas simples nem sempre precisem declarar todas explicitamente.

Terceira dica: domine o PICTURE. Entender PIC 9, PIC X, V e S é fundamental para trabalhar com dados.

Quarta dica: estude formatos numéricos. DISPLAY, COMP e COMP-3 possuem características diferentes que influenciam armazenamento e operações.

Quinta dica: pratique validações. Programas empresariais precisam tratar dados incorretos, valores inesperados e condições excepcionais.

Sexta dica: conheça JCL. No ambiente batch tradicional do z/OS, a linguagem de controle de jobs é essencial para compreender a execução operacional.

Sétima dica: aprenda a consultar resultados. Saber analisar mensagens, códigos de retorno e saídas no SDSF é tão importante quanto escrever o código.

Oitava dica: estude VSAM e Db2. Os dados são parte central da maioria das aplicações empresariais.

Nona dica: conheça CICS e terminais 3270. Eles ajudam a compreender como aplicações online tradicionais foram construídas e utilizadas.

Décima dica: não trate código legado como código inútil. Antes de substituir um programa, descubra quais regras de negócio ele implementa, quem depende dele e quais riscos uma mudança representa.


Capítulo XV — O desafio final de Dr. Stone: reconstruir um CPD com conhecimento científico

Imagine que Senku tivesse de reconstruir uma instalação IBM depois da petrificação da humanidade.

Certamente seria necessário compreender eletrônica, física, materiais, energia elétrica e processos industriais.

Mas mesmo com todo esse conhecimento, reconstruir um mainframe funcional seria um empreendimento imenso.

Um sistema dessa complexidade representa o resultado acumulado de gerações de engenharia.

Precisaríamos recuperar documentação, tecnologias de semicondutores, processos de fabricação, armazenamento, interfaces e sistemas operacionais.

E ainda existiria um desafio aparentemente menos espetacular, mas igualmente importante.

Reconstruir os programas que fazem o computador ser útil.

Uma CPU capaz de executar milhões de instruções não resolve automaticamente um problema bancário.

Precisamos definir arquivos, estruturas de dados, regras, validações, operações e controles.

É nesse momento que o COBOL reaparece.

A linguagem foi concebida para expressar operações empresariais de maneira relativamente próxima dos conceitos utilizados nas organizações.

Não depende de efeitos gráficos extraordinários.

Seu propósito é representar e executar regras de processamento.

Talvez seja justamente essa simplicidade conceitual que explique parte de sua resistência ao tempo.

O mundo mudou.

Os computadores ficaram menores.

As redes se expandiram.

A internet surgiu.

A inteligência artificial passou a participar do desenvolvimento de software.

Mas as organizações continuam precisando calcular salários, processar pagamentos, movimentar contas, administrar contratos e preservar informações.

A necessidade de confiabilidade não desapareceu.


Epílogo — O mainframe que se recusou a virar pedra

Nossa investigação começou com um enigma: por que a IBM, aparentemente invencível, entrou em crise?

Descobrimos que a resposta não está em um único acontecimento.

O System/370 continuou evoluindo, embora a IBM não tenha lançado uma família comercial chamada System/380.

O processo antitruste iniciado em 1969 terminou sem condenação final naquela ação.

Os choques do petróleo e a inflação alteraram o ambiente econômico.

Os microcomputadores de 8 bits levaram a informática para fora dos grandes centros de processamento.

O IBM PC legitimou a computação pessoal no mercado empresarial.

O MS-DOS e os computadores compatíveis ajudaram a consolidar um enorme ecossistema independente da fabricação exclusiva da IBM.

A Compaq demonstrou que os concorrentes podiam desenvolver novas gerações de computadores sem esperar pela criadora do padrão.

A Guerra Fria se aproximou do fim.

O Muro de Berlim caiu.

E a IBM chegou aos anos 1990 precisando reinventar profundamente seu modelo de negócios.

Mas o mainframe não desapareceu.

Ele evoluiu.

E o COBOL continuou sendo uma linguagem importante para aplicações empresariais.

O verdadeiro legado dessa história é que nenhuma tecnologia permanece relevante apenas por causa de seu passado.

Ela precisa continuar resolvendo problemas reais.

Para quem está começando no COBOL, essa talvez seja a maior lição de toda a aventura.

Não basta decorar comandos.

Precisamos compreender por que os sistemas foram construídos, quais necessidades atendem e como podem continuar evoluindo.

A ciência de Dr. Stone nos lembra da importância de reconstruir o conhecimento a partir dos princípios fundamentais.

No Bellacosa Mainframe, fazemos a mesma coisa com a arqueologia da computação.

Abrimos os manuais esquecidos, examinamos antigas arquiteturas, investigamos decisões empresariais e descobrimos que o passado continua vivo dentro de muitos dos sistemas atuais.

E, enquanto houver uma aplicação COBOL executando uma regra de negócio importante, haverá uma boa razão para continuar estudando a história dos gigantes de silício.

Porque, no Reino da Ciência Mainframe, o conhecimento nunca vira pedra.


Bellacosa Mainframe — Porque antes da nuvem existia o CPD. Antes dos micros existiam os grandes sistemas. E antes de declarar a morte do COBOL, alguém deveria verificar se o processamento batch terminou com RC=0000.

FIM — OU MELHOR, CONTINUE NO PRÓXIMO JOB.

Referências históricas recomendadas

sábado, 3 de outubro de 2026

REXX 1995: O dia em que a IBM quis conquistar o mundo — uma aventura mainframe sob a batuta de Spike Spiegel

 

Bellacosa Mainframe comenta sobre a conferencia que apresentou o REXX ao mundo

☕ UM CAFÉ NO BELLACOSA MAINFRAME

REXX 1995: O dia em que a IBM quis conquistar o mundo — uma aventura mainframe sob a batuta de Spike Spiegel

Bellacosa Mainframe — Arqueologia da Computação, COBOL, REXX e os fantasmas do código legado

Por Vagner Bellacosa — Bellacosa Mainframe

“See you, Space Cowboy…” — Cowboy Bebop







1. Introdução — Uma nave chamada IBM e um caçador de recompensas chamado REXX

Imagine a cena.

Estamos em maio de 1995. A Internet começa a conquistar universidades, empresas e os primeiros aventureiros digitais. O Windows 95 ainda não chegou oficialmente ao mercado. O Linux é uma promessa jovem, o OS/2 tenta conquistar seu território e os mainframes IBM continuam processando uma quantidade gigantesca de informações empresariais.

Em algum ponto desse universo tecnológico, 130 especialistas se reúnem no Stanford Linear Accelerator Center, na Califórnia, para discutir o futuro de uma linguagem que nasceu discretamente nos corredores da IBM.

Seu nome: REXX.

Agora imagine Spike Spiegel, o despreocupado caçador de recompensas de Cowboy Bebop, entrando numa sala repleta de terminais, fitas magnéticas e programadores experientes.

De mãos nos bolsos, observa as telas, pergunta onde está o café e descobre que há uma recompensa muito mais interessante do que alguns milhares de woolongs.

A recompensa é compreender como uma linguagem criada em 1979 estava se preparando para conquistar o universo da computação.

A bordo desta Bebop imaginária, nossa tripulação será formada por COBOL, REXX, JCL, CICS, Db2 e alguns personagens históricos da IBM.

Spike assume a batuta narrativa. Mike Cowlishaw é o arquiteto da linguagem. Melinda Varian, de Princeton, é nossa correspondente especial no simpósio.

E o programador COBOL iniciante? Esse será o novo tripulante que aprenderá a navegar por sistemas com décadas de história.

O mais interessante é que o simpósio realmente aconteceu.

O Sexto Simpósio Internacional de REXX, realizado de 1 a 3 de maio de 1995, deixou um documento histórico extraordinário: o relatório de Melinda Varian, preservado pela REXX Language Association.

Nele encontramos anúncios controversos, discussões técnicas, ideias inovadoras, previsões ousadas e até comentários sobre decisões equivocadas de projeto.

Vamos embarcar nessa aventura.


2. Episódio 1 — A origem de REXX: uma ideia no meio da noite

Nossa viagem começa em março de 1979.

Mike Cowlishaw, engenheiro da IBM no laboratório de Hursley, na Inglaterra, desperta durante a noite pensando em uma nova linguagem de programação.

Sua preocupação não era simplesmente produzir mais uma ferramenta.

Ele queria desenvolver uma linguagem fácil de aprender, fácil de lembrar e suficientemente expressiva para resolver problemas reais.

Naquela época, usuários de VM/CMS trabalhavam com linguagens como EXEC e EXEC2.

Essas ferramentas eram úteis, mas podiam produzir programas difíceis de ler, especialmente pela quantidade de símbolos e convenções sintáticas.

Cowlishaw desejava algo diferente.

Uma linguagem em que o programador pudesse concentrar a atenção no problema, e não na pontuação.

Foi assim que nasceu o REXX, cujo nome se relaciona à expressão Restructured Extended Executor.

A primeira implementação foi distribuída pela rede interna VNET da IBM em 21 de maio de 1979.

Essa rede conectava profissionais distribuídos por diferentes instalações da empresa.

Cowlishaw enviava propostas, recebia comentários, corrigia comportamentos e desenvolvia novas funcionalidades.

A linguagem cresceu por meio da colaboração.

Curiosidade: uma espécie de desenvolvimento comunitário antes do GitHub

O processo descrito por Cowlishaw lembra bastante práticas modernas de engenharia de software.

Primeiro, ele documentava uma funcionalidade.

Depois, compartilhava a proposta com outros profissionais.

Em seguida, escrevia exemplos para verificar se a ideia realmente fazia sentido.

Somente então avançava na implementação.

Hoje chamaríamos parte desse processo de desenvolvimento orientado por especificações, testes e feedback.

Em 1979, tudo isso acontecia por uma rede corporativa.

Ao final do primeiro ano, Cowlishaw havia dedicado aproximadamente mil horas ao projeto, produzido dez mil linhas de Assembler e escrito cinco mil linhas de documentação.

Observe o detalhe: o interpretador era desenvolvido em Assembler, mas seu objetivo era oferecer ao usuário uma linguagem muito mais acessível.

É como construir uma nave espacial sofisticadíssima para que seu piloto precise lidar apenas com comandos compreensíveis.

Primeiro programa REXX

/* BELLACOSA - PRIMEIRO REXX */

say "Bem-vindo ao universo mainframe"
say "Ano historico: 1995"
say "Missao: aprender REXX"
exit 0

A instrução SAY apresenta uma mensagem.

Os comentários ficam entre /* e */.

A instrução EXIT 0 encerra o programa indicando conclusão normal.

Simples, não?

Agora compare com um programa COBOL equivalente.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PRIMEIRO.
       PROCEDURE DIVISION.
           DISPLAY "Bem-vindo ao universo mainframe"
           DISPLAY "Ano historico: 1995"
           DISPLAY "Missao: aprender COBOL"
           GOBACK.

O exemplo COBOL utiliza formato fixo tradicional, com as instruções iniciando na área apropriada.

Ambos apresentam mensagens, mas suas estruturas são diferentes.

COBOL é especialmente adequado ao desenvolvimento de aplicações empresariais com regras de negócio e dados estruturados.

REXX é excelente para automação, interpretação de comandos e criação de utilitários.

Primeira lição da Bebop: não existe obrigação de escolher uma linguagem e abandonar todas as outras. O bom programador aprende a utilizar a ferramenta apropriada para cada missão.


3. Episódio 2 — A reunião secreta de 1995

Avancemos dezesseis anos.

Stanford Linear Accelerator Center, Califórnia.

Programadores, pesquisadores e especialistas se reúnem para o Sexto Simpósio Internacional de REXX.

Entre os participantes estão Mike Cowlishaw, Charles Daney, Ian Collier e Anders Christensen.

Cada um representa uma parte da evolução da linguagem.

O encontro tinha aproximadamente 130 participantes, o dobro do ano anterior.

Durante três dias, discutiram o REXX tradicional, sua evolução orientada a objetos, ferramentas de desenvolvimento, UNIX, Web, sistemas distribuídos, OS/2 e CICS.

Mas havia uma notícia que preocupava a comunidade.

A IBM havia anunciado a transferência do desenvolvimento de REXX de Endicott, nos Estados Unidos, para Böblingen, na Alemanha.

Segundo Melinda Varian, nenhum dos desenvolvedores existentes seria transferido junto com o projeto.

A autora demonstrou grande preocupação com essa decisão.

Ela estimou que a transferência poderia provocar um período de 18 a 24 meses de pouco avanço.

Essa estimativa era uma opinião registrada em 1995, não uma medição posterior do que efetivamente aconteceu.

O problema do conhecimento que desaparece

Imagine um sistema COBOL desenvolvido durante vinte anos.

Seu programador original conhece particularidades do código, regras de negócio, registros históricos e situações especiais que talvez nunca tenham sido documentadas.

Agora imagine que a equipe inteira seja substituída.

O código continua funcionando.

Os datasets continuam armazenados.

As transações CICS continuam sendo executadas.

Mas parte do conhecimento desaparece.

É exatamente essa a preocupação expressa por Varian.

Um dos maiores riscos de um sistema legado não é sua idade. É perder o conhecimento necessário para compreendê-lo e mantê-lo.

Essa lição permanece relevante para empresas que dependem de COBOL, PL/I, Assembler, REXX e JCL.

Dica Bellacosa Mainframe

Sempre que encontrar um programa antigo, investigue:

  1. Quem desenvolveu o programa?

  2. Qual problema empresarial ele resolve?

  3. Quais arquivos e tabelas utiliza?

  4. Quais outros programas dependem dele?

  5. Como é executado?

  6. Quais são seus códigos de retorno?

  7. Existem procedimentos documentados para recuperação de erros?

Documentação é uma forma de preservar conhecimento.

E conhecimento preservado reduz o custo de manutenção.


4. Episódio 3 — A IBM queria levar REXX para Linux

Entre os anúncios apresentados no simpósio estava uma novidade surpreendente.

A IBM planejava disponibilizar Object REXX para diferentes plataformas.

O cronograma divulgado incluía:

PlataformaPrevisão apresentada
LinuxJulho de 1995
PowerPCSetembro de 1995
OS/2Outubro de 1995
MVSDezembro de 1995
AIXDurante 1995
WindowsDurante 1995
VMMarço de 1996

Atenção: essas eram previsões divulgadas no evento, não comprovação de que todos os lançamentos ocorreram nas datas propostas.

O plano para Linux possuía uma característica especialmente interessante.

A IBM pretendia disponibilizar o código-fonte de sua implementação, permitindo que terceiros construíssem versões para outros sistemas UNIX e comercializassem suas soluções sem pagar royalties à empresa.

Não se tratava necessariamente de software livre nos moldes da GPL.

O anúncio estabelecia condições próprias.

Mesmo assim, para 1995, era uma decisão estratégica importante.

A IBM reconhecia que sua linguagem poderia ter um futuro além dos sistemas operacionais tradicionais da companhia.

Uma linguagem viajando entre planetas

Dentro da nossa analogia com Cowboy Bebop, cada sistema operacional representa um planeta.

VM/CMS é um dos mundos antigos.

MVS é uma enorme estação espacial corporativa.

OS/2 é uma colônia de computadores pessoais.

UNIX e Linux representam novos territórios.

REXX seria um viajante tentando circular entre todos eles.

Naturalmente, cada implementação possui particularidades.

Um script que executa comandos específicos de TSO não funcionará automaticamente em Linux.

A sintaxe básica pode ser semelhante, mas os comandos disponíveis dependem do ambiente.

Essa distinção é fundamental para iniciantes.

Portabilidade da linguagem não significa portabilidade automática de todos os programas.

Um script REXX que utiliza SAY, IF, DO e operações comuns sobre strings pode ser relativamente simples de adaptar.

Já um script que utiliza LISTDS, ALLOC, EXECIO ou serviços específicos de TSO/E exige um ambiente compatível ou alterações.


5. Episódio 4 — COBOL encontra REXX: duas linguagens, uma missão

Vamos imaginar uma empresa financeira.

Todos os dias, um programa COBOL processa movimentações e produz resultados.

O programa executa cálculos, valida registros e grava informações.

Mas alguém precisa preparar o ambiente, executar o processamento, conferir retornos e produzir relatórios.

É aqui que o REXX pode ajudar.

COBOL executa a regra de negócio.

JCL descreve e submete o trabalho em lote.

REXX pode automatizar tarefas operacionais e de desenvolvimento, inclusive a submissão de jobs e a análise de informações.

Vejamos um pequeno laboratório.

Laboratório 1 — Criando um programa COBOL para calcular saldos

Nosso programa inicial não acessará um banco de dados real nem movimentará dinheiro.

Ele trabalhará com valores fixos para facilitar a aprendizagem.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. SALDOB01.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01 WS-SALDO-INICIAL PIC 9(7)V99 VALUE 1500.00.
       01 WS-DEPOSITO      PIC 9(7)V99 VALUE 250.00.
       01 WS-SAQUE         PIC 9(7)V99 VALUE 100.00.
       01 WS-SALDO-FINAL   PIC 9(7)V99 VALUE ZERO.
       01 WS-SALDO-EDIT    PIC Z(6)9.99.

       PROCEDURE DIVISION.

           COMPUTE WS-SALDO-FINAL =
               WS-SALDO-INICIAL
               + WS-DEPOSITO
               - WS-SAQUE

           MOVE WS-SALDO-FINAL TO WS-SALDO-EDIT

           DISPLAY "BELLACOSA MAINFRAME"
           DISPLAY "SALDO FINAL: " WS-SALDO-EDIT

           GOBACK.

Esse exemplo usa formato fixo tradicional de COBOL, apropriado para ilustrar fontes clássicos.

Vamos entender os elementos.

WORKING-STORAGE SECTION contém variáveis usadas durante a execução.

PIC 9(7)V99 define um campo numérico com sete posições inteiras e duas decimais implícitas.

A letra V não ocupa espaço físico no campo.

COMPUTE executa o cálculo.

MOVE transfere o resultado para um campo editado.

DISPLAY apresenta informações na saída do programa.

GOBACK retorna o controle ao chamador ou ao ambiente de execução.

O saldo esperado é:

1500 + 250 − 100 = 1650.

O programa deverá apresentar o valor formatado como 1650.00, com os espaços iniciais previstos no campo editado.

O que acontece num sistema real?

Em uma aplicação empresarial, esses valores provavelmente seriam obtidos de arquivos sequenciais, VSAM, Db2 ou outra fonte.

Também seria necessário verificar saldos insuficientes, tipos de operação, consistência dos registros e possíveis falhas.

O programa acima demonstra apenas o cálculo.

A vantagem é que o iniciante consegue compreender sua estrutura antes de acrescentar complexidade.

6. Episódio 5 — JCL: o controlador de tráfego da Bebop

No ambiente z/OS, programas batch frequentemente são executados por meio de jobs descritos em JCL.

JCL significa Job Control Language.

Não é uma linguagem de programação de aplicação como COBOL.

Sua função é informar ao sistema quais programas executar, quais recursos utilizar e como tratar entradas e saídas.

Supondo que nosso programa COBOL já esteja compilado e linkeditado numa biblioteca de carga, poderíamos utilizar um job semelhante ao seguinte:

//BELLJOB  JOB (ACCT),'BELLACOSA',
//             CLASS=A,MSGCLASS=X,
//             NOTIFY=&SYSUID
//*
//RUNCOB   EXEC PGM=SALDOB01
//STEPLIB  DD DSN=USER.COBOL.LOAD,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT   DD SYSOUT=*
//

Os nomes de dataset e os parâmetros do JOB são ilustrativos e devem ser adaptados às regras da instalação.

A instrução JOB identifica o trabalho.

EXEC PGM=SALDOB01 solicita a execução do programa.

STEPLIB informa uma biblioteca de carga em que o sistema poderá localizar o módulo executável.

SYSOUT e SYSPRINT representam definições de saída frequentemente utilizadas em jobs.

O que acontece quando o job é submetido?

O JES recebe o trabalho, verifica suas condições de execução e o encaminha conforme a configuração do sistema.

O programa é carregado.

O cálculo é executado.

A saída pode ser examinada no spool, utilizando SDSF ou ferramentas equivalentes.

Passo a passo no ambiente TSO/ISPF

Passo 1: acesse o ambiente de desenvolvimento autorizado.

Passo 2: crie um membro de fonte COBOL em uma biblioteca apropriada.

Passo 3: digite o programa SALDOB01.

Passo 4: compile o programa utilizando o procedimento de compilação disponível na instalação.

Passo 5: verifique mensagens de erro, warnings e o código de retorno.

Passo 6: confirme que o módulo executável foi gravado na biblioteca de carga.

Passo 7: adapte o JCL de execução.

Passo 8: submeta o job.

Passo 9: examine o resultado no SDSF.

Passo 10: compare o saldo apresentado com o valor esperado.

Em muitos ambientes educacionais, existem procedimentos de compilação prontos. Utilize-os antes de tentar construir um JCL de compilação completo.

Dica de veterano

Um código de retorno zero geralmente representa conclusão normal, mas o significado depende da aplicação e de seus contratos de execução.

Não trate todos os retornos diferentes de zero como iguais.

Investigue também mensagens, condições de execução e eventuais abends.

Uma aplicação pode produzir resultado incorreto mesmo terminando com retorno zero.

7. Episódio 6 — REXX entra na sala de controle

Agora precisamos automatizar parte da missão.

Suponha que o programador execute frequentemente o mesmo job COBOL.

Em vez de navegar manualmente até o membro JCL e submetê-lo repetidamente, podemos criar um pequeno exec REXX.

No TSO/E, uma forma de submeter um membro JCL é utilizar o comando SUBMIT.

/* BELLJOB - ENVIO DE JOB COBOL */

say "BELLACOSA MAINFRAME"
say "Iniciando submissao do job..."

address tso

"SUBMIT 'USER.JCL(BELLJOB)'"

say "Retorno do comando SUBMIT:" rc

exit rc

Observe os elementos.

ADDRESS TSO direciona os comandos ao ambiente TSO.

O comando SUBMIT envia o JCL ao JES.

A variável especial RC recebe o código de retorno do comando executado.

O programa apresenta esse valor e termina.

Importante: o retorno de SUBMIT não representa necessariamente o resultado final do processamento COBOL. Ele informa o retorno do comando de submissão.

O job pode ter sido aceito e ainda estar aguardando execução.

Para conhecer o resultado final, será necessário verificar o job no JES/SDSF ou usar uma interface apropriada de consulta.

Essa distinção evita um erro comum entre iniciantes.

Como executar o REXX

Em uma instalação TSO/E, você pode criar um membro chamado BELLJOB numa biblioteca REXX e executá-lo com uma instrução semelhante a:

EXEC 'USER.REXX(BELLJOB)' EXEC

A biblioteca precisa existir, e o usuário deve ter as permissões necessárias.

O nome USER é apenas ilustrativo.

Em ambientes reais, cada instalação define seus padrões de nomenclatura, segurança e autorização.

O que ganhamos?

Ganhamos repetibilidade.

Uma operação executada várias vezes pode ser encapsulada em um procedimento simples.

Mas não devemos exagerar.

O pequeno exec não substitui o monitoramento do JES, não resolve falhas de aplicações e não transforma automaticamente um programa COBOL em um serviço Web.

Ele automatiza uma tarefa específica.

E esse é justamente um dos segredos da produtividade: começar automatizando tarefas pequenas, repetitivas e bem compreendidas.

8. Episódio 7 — REXX dentro do CICS: uma revolução inesperada

Entre as apresentações mais interessantes do simpósio estava a de Bob Vogel, gerente de desenvolvimento da IBM.

Seu tema era REXX for CICS/ESA.

Para compreender a importância dessa apresentação, precisamos conhecer o CICS.

CICS significa Customer Information Control System.

Ele é um servidor de aplicações transacionais utilizado em ambientes empresariais.

Imagine milhares de usuários consultando saldos, registrando pedidos, atualizando contas ou realizando operações simultaneamente.

CICS ajuda a gerenciar a execução dessas transações, coordenando programas e recursos conforme a arquitetura da aplicação.

Historicamente, COBOL ocupa um lugar importante nesse ecossistema.

No simpósio de 1995, Bob Vogel apresentou uma implementação de REXX destinada ao CICS.

Ela utilizava como base o núcleo do interpretador TSO/E REXX.

A solução acrescentava recursos específicos para CICS, incluindo integração com Db2, editor de texto, shell interativo, facilidades de painéis e um sistema de arquivos baseado em VSAM.

A surpresa: produtividade de 10 a 20 vezes

Vogel relatou que sua equipe, composta principalmente de programadores COBOL/CICS, estimava ganhos de produtividade entre dez e vinte vezes em determinadas atividades realizadas com REXX.

Calma, jovem tripulante!

Isso não significa que um programa REXX execute vinte vezes mais rápido que um programa COBOL.

Também não demonstra que REXX seja universalmente superior ao COBOL.

A declaração se referia à produtividade percebida pelos desenvolvedores em seu contexto de trabalho.

São coisas completamente diferentes.

Uma ferramenta pode permitir construir um protótipo em poucas horas sem necessariamente oferecer o melhor desempenho para processar milhões de registros.

Quando utilizar cada tecnologia?

NecessidadeTecnologia frequentemente adequada
Regras empresariais complexasCOBOL
Aplicações transacionaisCICS com COBOL ou outras linguagens suportadas
Processamento batchCOBOL e JCL
Automação TSO/ISPFREXX
Consultas e atualização de dados relacionaisSQL/Db2
Organização da execução batchJCL/JES
Investigação de jobsSDSF e ferramentas associadas

Essas tecnologias podem colaborar.

Não precisam disputar espaço como inimigas.

O sucesso de uma arquitetura depende da combinação correta de responsabilidades.

9. Episódio 8 — Object REXX: quando a linguagem ganhou novos poderes

Outra grande atração do simpósio foi o Object REXX.

Rick McGuire apresentou funcionalidades relacionadas à programação orientada a objetos.

Para um iniciante, orientação a objetos pode parecer um conceito complicado.

Mas sua ideia básica é relativamente simples.

Imagine que precisamos representar uma conta bancária.

Uma conta possui características:

  • Número.

  • Titular.

  • Saldo.

  • Situação.

E possui operações:

  • Consultar saldo.

  • Depositar.

  • Sacar.

  • Bloquear.

Em programação orientada a objetos, podemos organizar parte desses dados e comportamentos numa estrutura chamada classe.

Os objetos são instâncias dessa classe.

A proposta do Object REXX era acrescentar recursos desse modelo à linguagem tradicional.

Exemplo conceitual em Object REXX

/* Exemplo para Object REXX / ooRexx */

conta = .Conta~new
conta~depositar(250)

say "Saldo:" conta~saldo

::class Conta

::attribute saldo get

::method init
  expose saldo
  saldo = 1000

::method depositar
  expose saldo
  use arg valor
  saldo = saldo + valor

Esse exemplo ilustra uma implementação moderna compatível com os conceitos centrais de Object REXX. Não deve ser interpretado como uma reprodução literal de uma demonstração de 1995.

A classe Conta define um objeto.

O método init estabelece o saldo inicial.

O método depositar altera o saldo.

O símbolo ~ é utilizado para enviar mensagens aos objetos.

Mas COBOL também possui orientação a objetos?

Sim. Existem extensões e funcionalidades de COBOL orientado a objetos, dependendo do compilador e do ambiente.

Entretanto, é importante diferenciar o COBOL procedural tradicional das implementações com recursos orientados a objetos.

Grande parte dos sistemas empresariais COBOL utiliza estruturas procedurais, chamadas de programas, divisões, seções, parágrafos e módulos.

Para quem está começando, é mais importante dominar primeiro:

  • Estrutura de programa.

  • Tipos de dados.

  • Instruções condicionais.

  • Laços.

  • Processamento de arquivos.

  • Chamadas entre programas.

  • Tratamento de erros.

Depois disso, aprender novos paradigmas torna-se muito mais fácil.

10. Episódio 9 — REXX na Internet antes de muita gente conhecer a Web

Talvez a apresentação mais visionária do simpósio tenha sido a de Les Cottrell e Bebo White.

O assunto era a construção de scripts CGI para a World Wide Web utilizando REXX.

CGI significa Common Gateway Interface.

Era uma maneira de permitir que servidores Web executassem programas externos para produzir respostas dinâmicas.

Imagine que alguém acessa uma página de consulta.

O servidor recebe a solicitação.

Um programa processa informações.

O resultado é devolvido ao navegador.

Hoje esse modelo parece bastante familiar.

Mas em 1995 a Web ainda estava em sua infância.

Segundo o relatório, o SLAC havia instalado o primeiro servidor Web dos Estados Unidos em setembro de 1991.

Os apresentadores demonstraram principalmente soluções UNIX utilizando Uni-REXX, mas também discutiram ambientes VM.

Um exemplo didático de resposta HTTP

Um script CGI muito simples poderia produzir algo semelhante a:

/* Exemplo conceitual de CGI com REXX */

say "Content-Type: text/html"
say
say "<html>"
say "<body>"
say "<h1>Bellacosa Mainframe</h1>"
say "<p>REXX e a historia da Web</p>"
say "</body>"
say "</html>"

Em um ambiente CGI devidamente configurado, a primeira linha define o tipo de conteúdo.

A linha vazia separa os cabeçalhos do corpo da resposta.

O restante forma uma pequena página HTML.

Naturalmente, um servidor real precisaria estar configurado para executar o interpretador e o programa com permissões apropriadas.

Esse exemplo tem finalidade histórica e educacional. Não é uma recomendação para publicar diretamente um CGI antigo na Internet atual.

O alerta de segurança de 1995

Os apresentadores também discutiram riscos de segurança.

Melinda Varian destacou o cuidado necessário com a instrução INTERPRET.

Em REXX, INTERPRET permite executar uma string como instruções da linguagem.

Imagine receber um texto de um usuário externo e executá-lo diretamente.

Se o conteúdo não for confiável, o resultado poderá ser extremamente perigoso.

A mesma categoria de problema aparece em outras linguagens quando desenvolvedores utilizam recursos equivalentes a eval com entradas não confiáveis.

Lição de segurança: nunca transforme dados fornecidos por usuários em comandos executáveis sem controles rigorosos.

Evitar a execução dinâmica de conteúdo externo costuma ser a abordagem mais segura.

Em sistemas empresariais, valide dados, restrinja permissões e utilize interfaces estruturadas.

Esse aviso já estava presente em 1995.

Os piratas digitais não nasceram ontem.

11. Episódio 10 — O grande segredo: REXX e a preservação dos sistemas legados

Uma das mensagens mais importantes do simpósio não estava relacionada a uma funcionalidade específica.

Era a preocupação com a continuidade tecnológica.

Melinda Varian registrou o receio de que a transferência da equipe de desenvolvimento provocasse perda de conhecimento.

Mike Cowlishaw explicou como a linguagem havia evoluído graças ao retorno de seus usuários.

Os participantes demonstraram interesse em manter a compatibilidade e ampliar a presença do REXX.

Tudo isso revela uma realidade que permanece fundamental nos ambientes mainframe.

Sistemas empresariais são construídos por pessoas.

Programas sobrevivem décadas porque equipes os mantêm, documentam, corrigem e adaptam.

Um sistema COBOL de 1985 pode continuar útil em 2026.

Mas sua manutenção dependerá de profissionais capazes de compreender tanto o código quanto as regras de negócio.

A idade do programa, isoladamente, não determina sua qualidade.

O que importa é sua confiabilidade, segurança, documentação, desempenho, suporte e capacidade de evolução.

Dica prática: seja um arqueólogo de código

Quando receber a missão de analisar um programa COBOL desconhecido, não comece alterando instruções.

Primeiro, investigue a estrutura.

Procure o PROGRAM-ID.

Identifique arquivos no FILE-CONTROL.

Examine os registros na FILE SECTION.

Observe variáveis na WORKING-STORAGE SECTION.

Localize o início do processamento na PROCEDURE DIVISION.

Procure instruções CALL, READ, WRITE, REWRITE, START e EXEC SQL.

Depois, construa um mapa das dependências.

Somente então prepare testes.

Se houver REXX associado ao processo, examine o que ele automatiza.

Se houver JCL, identifique o fluxo dos jobs.

Se houver CICS, investigue as transações, programas e recursos envolvidos.

Essa metodologia permite compreender o sistema antes de modificá-lo.

12. Episódio 11 — Um pequeno laboratório de automação

Vamos criar um segundo exemplo REXX.

Desta vez, nosso objetivo será validar dados numéricos antes de realizar um cálculo.

/* BELLVAL - VALIDACAO SIMPLES */

saldo = "1500.00"
deposito = "250.00"
saque = "100.00"

if \datatype(saldo, "N") |
   \datatype(deposito, "N") |
   \datatype(saque, "N") then do

   say "ERRO: VALOR NAO NUMERICO"
   exit 8
end

saldoFinal = saldo + deposito - saque

say "SALDO INICIAL:" saldo
say "DEPOSITO:" deposito
say "SAQUE:" saque
say "SALDO FINAL:" saldoFinal

exit 0

A função DATATYPE verifica características de um valor.

Com o argumento "N", podemos testar se o conteúdo corresponde a uma representação numérica aceita pelo interpretador.

O operador \ representa negação lógica.

O operador | representa OU lógico.

A estrutura IF ... THEN DO ... END permite executar várias instruções quando uma condição é verdadeira.

Esse exemplo é apenas uma validação introdutória.

Para operações financeiras reais, também seria necessário verificar escala decimal, limites, valores negativos, regras monetárias e consistência empresarial.

Exercício para o leitor

Modifique o programa para que o saque seja maior do que o saldo disponível.

Depois acrescente uma condição impedindo que o saldo fique negativo.

Uma possível solução é:

if saque > saldo + deposito then do
   say "ERRO: SALDO INSUFICIENTE"
   exit 12
end

Repare que agora estamos aproximando um script simples de uma regra de negócio.

É exatamente nesse ponto que o programador precisa pensar na responsabilidade de cada componente.

Uma validação feita em REXX não deve substituir os controles obrigatórios da aplicação COBOL que efetivamente processa a transação.

A segurança e a integridade devem ser garantidas no componente responsável pela operação.

13. Episódio 12 — Easter eggs e curiosidades do simpósio

Toda boa aventura possui seus segredos.

E o encontro de 1995 preservou alguns detalhes deliciosos para quem gosta da história da computação.

Easter egg 1 — A letra X de um milhão de dólares

Segundo Cowlishaw, a mudança do nome REX para REXX teria provocado custos internos estimados em aproximadamente um milhão de dólares.

O motivo envolvia atualizações de documentação e materiais já existentes.

Uma simples letra.

Um milhão de dólares.

É o tipo de história que demonstra como pequenas mudanças podem produzir enormes efeitos em ambientes corporativos.

Easter egg 2 — A mudança que quebrou milhões de programas

Cowlishaw também mencionou que a alteração de ARGS para ARG teria afetado aproximadamente 2,5 milhões de programas.

Essa quantidade era uma estimativa histórica apresentada pelo próprio criador da linguagem.

Para o programador COBOL iniciante, a lição é clara.

Alterar uma interface utilizada por outros sistemas pode produzir consequências muito maiores do que modificar uma variável local.

Compatibilidade é um patrimônio.

Easter egg 3 — O criador reconheceu os próprios erros

Cowlishaw comentou decisões que reconsideraria.

Entre elas estavam as comparações sensíveis a maiúsculas e minúsculas, o uso de DO em diferentes estruturas e a complexidade do mecanismo de parsing.

Essa atitude merece destaque.

Reconhecer limitações de projeto é uma qualidade importante de engenharia.

O fato de uma linguagem possuir milhões de usuários não significa que todas as escolhas originais tenham sido perfeitas.

Easter egg 4 — Perl virou motivo de brincadeira

Melinda Varian registrou uma piada em que Perl foi comparado ao REXX escrito apenas com caracteres especiais.

É uma brincadeira relacionada à conhecida densidade sintática de certas construções em Perl.

A curiosidade revela como as comunidades de programação já discutiam legibilidade, produtividade e estilos de linguagem.

Easter egg 5 — Os exemplos eram distribuídos em disquete

O simpósio começou com tutoriais apresentados por Chip Davis.

Os programas demonstrados foram disponibilizados no disquete do evento.

Hoje compartilhamos exemplos por repositórios digitais e plataformas de colaboração.

Naquela época, um pequeno disco magnético transportava parte do conhecimento técnico da conferência.

Easter egg 6 — Um problema real com ASCII, EBCDIC e PostScript

No final do relatório, Melinda Varian incluiu um exemplo de REXX e CMS Pipelines para processar um arquivo PostScript relacionado à proposta do padrão ANSI.

O arquivo apresentava diferenças nas terminações de linha e exigia conversões de caracteres.

A autora utilizou recursos de pipelines, conversão ASCII/EBCDIC e separação do documento em partes.

Esse trecho demonstra algo valioso: REXX também era uma ferramenta prática para resolver problemas de interoperabilidade entre sistemas.

Quem trabalha com mainframe conhece a importância de compreender codificações, formatos de registros e convenções de armazenamento.

Um arquivo aparentemente simples pode se tornar um quebra-cabeça quando atravessa plataformas.

14. Episódio 13 — O que o iniciante deve estudar depois dessa viagem?

A melhor maneira de aproveitar essa história é transformá-la em conhecimento prático.

Proponho uma trilha de estudos organizada em sete missões.

Missão 1 — COBOL básico. Aprenda a estrutura de um programa, campos PIC, instruções MOVE, DISPLAY, COMPUTE, IF, EVALUATE e PERFORM.

Missão 2 — JCL. Compreenda JOB, EXEC, DD, bibliotecas de carga, datasets, condições de execução e códigos de retorno.

Missão 3 — TSO/ISPF. Aprenda a navegar por bibliotecas, editar membros e localizar programas e jobs.

Missão 4 — REXX. Estude SAY, PARSE, IF, DO, DATATYPE, ADDRESS e o tratamento da variável RC.

Missão 5 — SDSF. Aprenda a consultar a execução de jobs, examinar saídas e interpretar mensagens.

Missão 6 — CICS e Db2. Conheça os fundamentos das aplicações transacionais e dos dados relacionais.

Missão 7 — Automação segura. Construa utilitários pequenos, documentados e testados para reduzir tarefas repetitivas.

O importante é não tentar aprender tudo simultaneamente.

Domine um fundamento.

Pratique.

Cometa erros em um ambiente autorizado de laboratório.

Leia as mensagens.

Corrija.

Depois avance.

Um programador não se torna experiente apenas assistindo a demonstrações.

Ele precisa executar, investigar e compreender.

15. Episódio 14 — O legado de 1995 em 2026

Trinta e um anos se passaram desde o simpósio.

O mercado de computação mudou profundamente.

A Internet se tornou infraestrutura essencial.

Linux passou a ocupar um lugar central em servidores e ambientes corporativos.

Serviços distribuídos, APIs, contêineres, computação em nuvem e inteligência artificial transformaram a maneira como construímos sistemas.

Mas COBOL continua presente em aplicações empresariais importantes.

REXX ainda é utilizado para automação em ambientes IBM Z.

JCL permanece essencial em muitos fluxos batch.

CICS e Db2 continuam associados a aplicações críticas.

Isso não significa que todos os planos apresentados em 1995 tenham se concretizado.

Alguns produtos evoluíram.

Outros perderam espaço.

Algumas arquiteturas foram substituídas por soluções diferentes.

O ponto importante é que a necessidade de integrar sistemas, preservar conhecimento e automatizar operações não desapareceu.

Ela apenas ganhou novas ferramentas.

Hoje podemos utilizar REXX para tarefas tradicionais, Python para automações externas, Zowe para interação com recursos z/OS, APIs para integração e ferramentas de DevOps para organizar entregas.

Cada tecnologia precisa ser avaliada conforme o ambiente, a segurança, o suporte e os objetivos do projeto.

A lição do simpósio é que modernização não começou com a computação em nuvem.

Ela já era uma preocupação concreta dos desenvolvedores de mainframe em 1995.

16. Episódio final — O último café da Bebop

Nossa nave retorna ao presente.

Spike Spiegel observa um antigo terminal.

Na tela, um programa COBOL apresenta seu resultado.

Ao lado, um pequeno exec REXX automatiza uma tarefa.

No spool do JES, um job termina normalmente.

Nada parece extraordinário.

Entretanto, cada componente carrega décadas de decisões arquiteturais, aprendizagem e engenharia.

O REXX nasceu da vontade de tornar a programação mais acessível.

O COBOL consolidou-se como instrumento fundamental para representar e executar regras empresariais.

O JCL organizou a execução de trabalhos.

O CICS ajudou a construir ambientes transacionais.

E os profissionais que desenvolveram essas tecnologias enfrentaram muitos dos mesmos problemas que encontramos hoje: produtividade, interoperabilidade, documentação, segurança e preservação do conhecimento.

O simpósio de 1995 nos ensina que o futuro raramente surge completamente separado do passado.

Muitas vezes ele nasce de uma melhoria aparentemente pequena, de uma necessidade operacional ou de uma ideia discutida entre programadores.

Como na jornada de Spike Spiegel, cada missão deixa alguma coisa para trás.

Algumas decisões não podem ser desfeitas.

Alguns erros continuam presentes.

Mas há sempre uma nova oportunidade para compreender melhor o sistema e construir uma solução mais elegante.

Para o novo programador COBOL, fica uma última recomendação.

Não trate o mainframe como uma caixa-preta.

Abra os manuais.

Leia os programas.

Experimente REXX.

Entenda JCL.

Investigue os jobs.

Aprenda com os profissionais que vieram antes.

E, quando encontrar um programa escrito há trinta ou quarenta anos, lembre-se de que alguém precisou imaginar, desenvolver, testar e colocar aquele código em produção.

Um sistema legado não é apenas um programa antigo. É uma história que continua sendo executada.

Até a próxima missão.

See you, Space Cowboy…


Referências históricas

  1. Melinda Varian — REXX Symposium, May 1995. Relatório do Sexto Simpósio Internacional de REXX, publicado em 1995.
    https://www.rexxla.org/events/1995/report.html

  2. Proceedings of the 6th International REXX Symposium. SLAC-R-95-464, Stanford Linear Accelerator Center.
    https://www.slac.stanford.edu/pubs/slacreports/reports21/slac-r-464.pdf

  3. Mike Cowlishaw — REXX 1995: The Growth of a Language. Apresentação histórica sobre as origens e a evolução do REXX, incluída nos anais do simpósio.

  4. REXX Language Association — Arquivo de apresentações históricas.
    https://www.rexxla.org/events/presentation.rsp

Nota editorial: os personagens e as situações envolvendo Spike Spiegel e a nave Bebop constituem uma homenagem narrativa a Cowboy Bebop. Não representam acontecimentos reais do simpósio. Os programas didáticos foram elaborados para este artigo, e não extraídos literalmente das apresentações históricas. Os números de mercado, previsões de lançamento e estimativas de produtividade são apresentados no contexto em que foram relatados em 1995.


Bellacosa Mainframe
Preservando o passado, compreendendo o presente e programando o futuro.

See you, Mainframe Cowboy…

quarta-feira, 15 de julho de 2026

O Funeral que Nunca Aconteceu : A História da Morte do Mainframe... Contada por Quem Sobreviveu

Bellacosa Mainframe e a morte do Mainframe e Cobol

☕ Um Café no Bellacosa Mainframe

O Funeral que Nunca Aconteceu

A História da Morte do Mainframe... Contada por Quem Sobreviveu

Uma jornada histórica por 14 capítulos que revisitam as previsões sobre o fim do mainframe e mostram como IBM Z, COBOL, CICS, Db2 e z/OS continuaram evoluindo até a era do IBM z17 e da Inteligência Artificial.

Por

 O Funeral que Nunca Aconteceu, série histórica sobre as previsões da morte do mainframe
Uma viagem pelas manchetes que anunciaram a morte do mainframe e pela evolução que conduziu a plataforma até o IBM z17.

“A melhor maneira de entender o futuro é estudar as previsões que nunca aconteceram.”

— Bellacosa Mainframe



Bellacosa Mainframe e seu thesaurus El Jefe Midnight Lunch

Introdução

Existe uma frase muito conhecida na tecnologia:

"O Mainframe vai morrer."

Ela foi repetida tantas vezes que acabou se tornando uma espécie de tradição da indústria.

Durante décadas, jornalistas, analistas, consultores e fabricantes anunciaram o fim da plataforma IBM Mainframe.

Alguns diziam que seria substituída pelos PCs.

Depois vieram as workstations.

Em seguida o Client/Server.

Depois Windows NT.

Java.

Linux.

Cloud.

Microservices.

Blockchain.

Metaverso.

Agora Inteligência Artificial.

O curioso é que todas essas tecnologias realmente revolucionaram a computação.

Mas nenhuma conseguiu fazer aquilo que tantas manchetes prometeram:

Substituir completamente o Mainframe.

Este artigo reúne toda essa jornada histórica, baseada nas reportagens preservadas pelo Professor Wolfgang Spruth em seu clássico trabalho The Death of the Mainframe, acrescentando uma visão moderna de quem vive diariamente o IBM Z em 2026.

Pegue um café.

Vamos revisitar quase quarenta anos de História da Computação.


Capítulo 1

O Funeral que Nunca Aconteceu

Abrimos nossa jornada voltando ao final dos anos 80, quando a indústria começou a decretar oficialmente a morte do Mainframe.

Mostramos como surgiu essa narrativa e como, enquanto jornais anunciavam o funeral, bancos, seguradoras, governos e companhias aéreas continuavam processando bilhões de transações em COBOL, CICS e Db2.

Foi o início da maior ironia da computação.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-1-o-funeral-que-nunca-aconteceu.html


Capítulo 2

A Década dos Buzzwords

Entramos na verdadeira fábrica de modismos tecnológicos.

Client/Server.

Downsizing.

Open Systems.

Distributed Computing.

Windows NT.

RISC.

Cada nova palavra parecia carregar uma promessa:

"Agora acabou para o Mainframe."

Descobrimos que buzzwords mudam rapidamente.

Problemas de negócio não.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-2-decada-dos-buzzwords.html


Capítulo 3

Wolfgang Spruth — O Historiador do Mainframe

Conhecemos o professor alemão Wolfgang Spruth.

Em vez de discutir com jornalistas, ele tomou uma atitude muito mais inteligente.

Arquivou todas as manchetes.

Graças ao seu trabalho, hoje podemos estudar essas previsões como documentos históricos, compreendendo o contexto em que foram escritas e por que pareciam tão convincentes.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-3-o-professor-que-arquivou-o.html


Capítulo 4

Forbes (1989)

Analisamos uma das primeiras grandes reportagens que classificaram o Mainframe como um "dinossauro tecnológico".

Descobrimos que a Forbes acertou ao perceber a ascensão dos computadores pessoais.

Mas errou ao acreditar que crescimento significava substituição.

Enquanto a reportagem era publicada...

Os sistemas continuavam funcionando normalmente.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-4-forbes-1989.html


Capítulo 5

The New York Times (1989)

O tema saiu das revistas especializadas e chegou ao grande público.

O New York Times popularizou mundialmente a imagem do Mainframe como uma tecnologia destinada ao desaparecimento.

Explicamos por que aquela conclusão parecia lógica na época e mostramos como ela ignorava o verdadeiro patrimônio das empresas: décadas de regras de negócio.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-5-new-york-times-1989.html


Capítulo 6

InfoWorld (1991)

Chegamos à previsão mais famosa da História da Computação.

Stewart Alsop declarou que:

"Em 15 de março de 1996 alguém desligará o último Mainframe."

A data chegou.

O Mainframe permaneceu ligado.

Décadas depois, o próprio autor reconheceria publicamente o equívoco.

Hoje essa previsão tornou-se um dos maiores exemplos de como extrapolar tendências pode produzir conclusões equivocadas.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-6-infoworld-1991.html


Capítulo 7

New York Times (1993)

Mesmo após quatro anos de transformações, o jornal voltou ao tema afirmando que o Mainframe estava "correndo rumo à extinção".

Mostramos por que a computação realmente estava mudando profundamente, mas também por que evolução da arquitetura não significava desaparecimento da plataforma.

Enquanto manchetes eram publicadas...

Os sistemas continuavam processando milhões de transações.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-7-new-york-times-1993.html


Capítulo 8

Business Week (1994)

O primeiro grande sinal de mudança.

George Colony, da Forrester Research, declarou:

"It's the end of the end for the mainframes."

A indústria começava a perceber que talvez tivesse enterrado o paciente cedo demais.

Os primeiros projetos gigantescos de migração revelavam custos, riscos e complexidade muito maiores do que o previsto.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-8-business-week-1994.html


Capítulo 9

O Que Realmente Aconteceu

Saímos das manchetes e acompanhamos a evolução verdadeira da plataforma.

Parallel Sysplex.

CMOS.

Linux on IBM Z.

Java.

Virtualização.

zAAP.

zIIP.

Web Services.

REST.

OpenShift.

Zowe.

Ansible.

BOB.

watsonx.

IBM z17.

Enquanto alguns aguardavam o funeral...

A IBM construía uma das plataformas mais modernas da computação corporativa.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-9-o-que-realmente-aconteceu.html


Capítulo 10

Por Que Todos Erraram?

Este talvez seja o capítulo mais importante.

Demonstramos que o erro nunca foi técnico.

O erro foi analisar apenas hardware.

Poucos perceberam que empresas não compram computadores.

Empresas acumulam conhecimento.

E conhecimento não é substituído simplesmente porque surgiu um processador mais rápido.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-10-por-que-tantas-previsoes.html


Capítulo 11

O Cemitério dos Buzzwords

Visitamos, com humor, um enorme cemitério imaginário.

Client/Server.

Windows NT.

SOA.

ERP.

Cloud.

Blockchain.

Metaverso.

Todos prometeram substituir completamente o Mainframe.

Nenhum conseguiu.

Não porque fossem tecnologias ruins.

Mas porque o Mainframe fez algo muito mais inteligente.

Integrou todas elas.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-11-o-cemiterio-dos-buzzwords.html


Capítulo 12

O Legado dos Profetas

Chegamos a 2026.

IBM z17.

watsonx.

COBOL moderno.

Db2 13.

CICS TS.

BOB.

OpenShift.

DevOps.

Mostramos que a verdadeira força do Mainframe nunca foi resistir às mudanças.

Foi evoluir continuamente.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-12-o-legado-dos-profetas-e.html


Capítulo 13

A IA e o Próximo Funeral

A História está se repetindo.

Hoje muitas manchetes afirmam que a Inteligência Artificial eliminará programadores.

Talvez.

Talvez não.

Depois de estudar quarenta anos de previsões aprendemos uma lição.

Desconfie sempre de afirmações absolutas.

A IA provavelmente transformará profundamente o desenvolvimento de software.

Mas também poderá tornar COBOL, Db2 e o IBM Z ainda mais produtivos.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-13-os-profetas-da-ia-e-o.html


Capítulo 14

O Julgamento da História

Encerramos nossa jornada imaginando um grande tribunal.

As testemunhas não eram jornalistas.

Eram bancos.

Companhias aéreas.

Seguradoras.

Governos.

Programadores.

DBAs.

Sysprogs.

Arquitetos.

No final, o juiz — representado pela própria História — conclui algo extraordinário.

Os jornalistas não estavam de má-fé.

Eles apenas tentaram prever o futuro.

O problema é que o futuro resolveu seguir um caminho muito mais interessante.

https://eljefemidnightlunch.blogspot.com/2026/07/capitulo-14-o-julgamento-da-historia.html


Bellacosa Mainframe e a conclusão da Saga a Morte do Mainframe

A Grande Lição

Depois de estudar quase quarenta anos de previsões existe uma conclusão inevitável.

As tecnologias realmente revolucionárias não costumam destruir imediatamente aquelas que vieram antes.

Elas convivem.

Integram-se.

Aprendem umas com as outras.

Foi assim com:

  • PCs.

  • UNIX.

  • Linux.

  • Internet.

  • Java.

  • Cloud.

  • Containers.

  • Kubernetes.

  • DevOps.

  • Inteligência Artificial.

Todas transformaram a computação.

E todas, de alguma forma, passaram a fazer parte do ecossistema IBM Z.

O verdadeiro vencedor nunca foi o Mainframe.

Nem o Client/Server.

Nem o Cloud.

Nem a IA.

O verdadeiro vencedor foi a Engenharia.


Uma mensagem ao Padawan COBOL

Se você está começando sua jornada...

Nunca escolha uma tecnologia apenas porque ela está na moda.

Escolha porque ela resolve problemas.

Nunca abandone uma plataforma apenas porque alguém a chamou de "legado".

Descubra primeiro se ela continua gerando valor.

Nunca confunda marketing com arquitetura.

Nunca confunda hype com inovação.

E, principalmente...

Nunca deixe de estudar História.

Porque quem conhece o passado dificilmente será enganado pelos mesmos discursos no futuro.


Epílogo

Em 1989 disseram que era um dinossauro.

Em 1991 marcaram sua morte.

Em 1993 afirmaram que caminhava para a extinção.

Em 1994 começaram a voltar atrás.

Em 2026...

O IBM z17 executa Inteligência Artificial.

O watsonx auxilia decisões corporativas.

O COBOL continua movimentando trilhões de dólares.

O Db2 protege dados críticos.

O CICS processa bilhões de transações.

O z/OS integra cloud híbrida.

O BOB moderniza pipelines.

O Zowe aproxima novas gerações.

O Mainframe nunca sobreviveu porque resistiu ao futuro.

Ele sobreviveu porque aprendeu a evoluir junto com ele.

E talvez essa seja a maior lição deixada pelo Professor Wolfgang Spruth.

A História nunca matou o Mainframe.

Ela apenas demonstrou que boas arquiteturas envelhecem muito melhor do que boas manchetes.


☕ Que a Engenharia esteja com você.

Sempre. 


Índice completo da série

  1. Capítulo 1 — O Funeral que Nunca Aconteceu
  2. Capítulo 2 — A Década dos Buzzwords
  3. Capítulo 3 — O Professor que Arquivou o Funeral
  4. Capítulo 4 — Forbes (1989)
  5. Capítulo 5 — The New York Times (1989)
  6. Capítulo 6 — InfoWorld (1991)
  7. Capítulo 7 — The New York Times (1993)
  8. Capítulo 8 — Business Week (1994)
  9. Capítulo 9 — O Que Realmente Aconteceu
  10. Capítulo 10 — Por Que Tantas Previsões Erraram?
  11. Capítulo 11 — O Cemitério dos Buzzwords
  12. Capítulo 12 — O Legado dos Profetas
  13. Capítulo 13 — Os Profetas da IA e o Próximo Funeral
  14. Capítulo 14 — O Julgamento da História

A grande lição

O mainframe não permaneceu relevante porque rejeitou PCs, Linux, Java, cloud, containers, DevOps ou Inteligência Artificial. Ele permaneceu relevante porque incorporou essas tecnologias sem abandonar disponibilidade, segurança, desempenho, compatibilidade e décadas de regras de negócio.

Uma mensagem ao Padawan COBOL

Nunca escolha uma tecnologia apenas porque ela está na moda. Escolha porque ela resolve problemas reais. Nunca abandone uma plataforma apenas porque alguém a chamou de legado. Descubra primeiro se ela continua gerando valor.

Bellacosa Mainframe e o Funeral que nunca aconteceu





C:\BELLACOSA\COBOL\FUNERAL_QUE_NUNCA_ACONTECEU.HTML
★ BELLACOSA MAINFRAME APRESENTA ★

A MORTE DO COBOL

O Funeral que Nunca Aconteceu

Uma investigação histórica em 14 capítulos sobre as previsões, reportagens, buzzwords e profetas que anunciaram repetidamente o fim do COBOL — enquanto bilhões de transações continuavam sendo processadas silenciosamente.

SISTEMA ONLINE — 14 CAPÍTULOS DISPONÍVEIS
▼ DIRETÓRIO DE CAPÍTULOS ▼

README.TXT

Esta série investiga uma das narrativas mais repetidas da história da tecnologia: a suposta morte do COBOL. Durante décadas, revistas, jornais, consultorias e especialistas anunciaram seu desaparecimento. Entretanto, o COBOL permaneceu processando bancos, seguradoras, governos, cartões, pagamentos e sistemas críticos.

Os títulos e links acima são elementos HTML reais, permitindo que mecanismos de busca encontrem e rastreiem todos os capítulos. Os iframes funcionam apenas como previews visuais.

C:\> RUN BELLACOSA.EXE /COBOL /HISTORY /NO-FUNERAL _

★ BELLACOSA MAINFRAME ★ COBOL ★ IBM Z ★ HISTÓRIA DA COMPUTAÇÃO ★

Melhor visualizado em qualquer navegador com café disponível.

Vagner Renato Bellacosa, IBM Champion e especialista em IBM Mainframe
IBM Z17 SYSTEM ONLINE
Sobre o autor

Vagner Renato Bellacosa

IBM Champion 2026 • Especialista em IBM Mainframe

Vagner Renato Bellacosa trabalha com IBM Mainframe desde 1988 , é IBM Champion e especialista em COBOL, CICS, Db2, z/OS e IBM Z. Compartilha experiências profissionais, conhecimento técnico, história da computação e práticas do universo mainframe para aproximar novas gerações das tecnologias que sustentam empresas, bancos e governos ao redor do mundo.

IBM Champion IBM Z COBOL CICS Db2 z/OS Mainframe desde 1988
GitHub LinkedIn
Inicializando conteúdo...