40º aniversário do Turbo Pascal
(blog.marcocantu.com)- Turbo Pascal, lançado pela Borland em novembro de 1983, completou oficialmente 40 anos em novembro de 2023
- O Turbo Pascal é considerado o produto que deu início à Borland e o primeiro ambiente de desenvolvimento integrado (IDE) amplamente usado no setor
- Na época, causou forte impressão pela experiência de desenvolvimento e pelo nível de acabamento do produto, o que levou a um grande sucesso comercial
- A Embarcadero continua desenvolvendo a linha de compiladores sucessora, e o compilador de linha de comando Win32 do Delphi 12 Athens usa a versão 36.0
- Como o esquema de numeração atual remonta ao primeiro Turbo Pascal, este 40º aniversário se conecta diretamente também à história da linha Delphi
Turbo Pascal, iniciado em novembro de 1983
- Turbo Pascal foi um produto lançado pela Borland em novembro de 1983
- Em novembro de 2023, completou oficialmente 40 anos
Lugar na história da Borland e dos IDEs
- O Turbo Pascal é avaliado como um produto marco no setor
- Foi o produto que deu início à empresa Borland
- É citado como o primeiro IDE amplamente conhecido
- Para os padrões da época, era um produto excelente, e a escala de seu sucesso também foi muito grande
Leituras adicionais e contexto de Pascal
- Sobre o Turbo Pascal, é possível ler mais no post recente do blog de David I e na Wikipedia
- Como materiais relacionados a Pascal, também são apresentados o post do blog sobre os 50 anos de Pascal e a apresentação do primeiro Pascal World Congress em Salamanca
Compiladores sucessores que seguiram até a Embarcadero
- A Embarcadero continua desenvolvendo a linha de compiladores sucessores do Turbo Pascal
- Recentemente, lançou a versão 36 desse compilador
- No compilador de linha de comando do Delphi 12 Athens, aparece a identificação de versão
Embarcadero Delphi for Win32 compiler version 36.0 - Essa numeração de versão 36 segue um esquema que remonta ao primeiro Turbo Pascal
Easter Egg de comemoração dos 40 anos
- A Embarcadero dedicou um Easter Egg do produto ao aniversário do Turbo Pascal para celebrar os 40 anos
- A mensagem termina com “Happy 40th birthday, Turbo Pascal!”
1 comentários
Opiniões no Hacker News
Um dos jogos de computador de que eu gostava era ZZT, escrito em Turbo Pascal. Era um estranho jogo em modo texto criado por Tim Sweeney, da Epic Megagames, que misturava quebra-cabeças e tiro; até a versão shareware gratuita vinha com um editor de jogos e incluía uma pequena linguagem de programação chamada ZZT-OOP.
O código-fonte original do ZZT se perdeu, mas alguns anos depois Adrian Siekierka fez uma engenharia reversa persistente do código Pascal original, de modo que, ao compilá-lo com a versão original do Turbo Pascal, ele gerasse um executável idêntico byte a byte. É impressionante.
https://blog.asie.pl/2020/08/reconstructing-zzt/
https://news.ycombinator.com/item?id=22609474
https://benhoyt.com/writings/zzt-in-go/
Turbo Pascal me introduziu à programação. Lembro de ter gasto centenas de marcos alemães em licenças do Borland Pascal 7.0 e, depois, do Delphi 1.0 e 2.0, e acabei criando meu primeiro software “comercial” vendido por dinheiro.
Na era do DOS, tirando Basic, acho que Turbo Pascal era o caminho mais fácil para entrar em programação; no Windows 3.1/95, o Delphi foi uma ferramenta que abriu meus olhos ao mostrar que programação de GUI podia ser tão fácil assim.
Em vários aspectos, sinto que até regredimos desde então. Os compiladores Turbo Pascal / Delphi geravam programas GUI completos em binários pequenos, e fico me perguntando como softwares de desempenho semelhante hoje ficaram tantas ordens de grandeza maiores.
Se a causa fosse um erro de digitação, corrigir, recompilar e executar levava 1 segundo. As ferramentas de hoje muitas vezes têm outra filosofia, que exige do desenvolvedor ações desnecessárias.
A exceção é a SAP, que de algum modo parece ter conseguido combinar a hostilidade ao usuário das UIs dos anos 90 com o consumo de recursos dos programas modernos. A linguagem que usei depois de BASIC também foi Turbo Pascal.
O que mais me marcou no TP foi que cada função tinha exemplos de código simples e fáceis de entender, e tudo era organizado de forma lógica, então era fácil encontrar e usar. Por isso, mesmo sendo um adolescente que mal entendia BASIC, consegui aprender Turbo Pascal sozinho, sem internet, usando apenas a IDE
Hoje há sistemas demais que nem chegam perto disso. Fico pensando se isso se devia às características simples dos sistemas x86 DOS da época, ou se se tornou impossível criar algo assim por causa do ritmo acelerado de mudanças, das exigências multiplataforma e da complexidade atuais
Eu acrescentaria que, na época, o Processing era o único framework de creative coding com documentação offline completa. Por exemplo, o OpenFrameworks até hoje é, em grande parte, quase uma documentação vazia gerada automaticamente
Na minha opinião, isso foi um dos fatores que deram ao Processing uma vantagem sobre as alternativas em ambientes educacionais. Foi bem decepcionante que o p5.js não tenha continuado totalmente essa tradição, exigindo conexão online para ler a documentação, e passando a renderizar o texto com JavaScript ao abrir, em vez de ser um site estático. Ainda assim, a documentação em si é completa, incluindo os exemplos
https://processing.org/
https://p5js.org/
Isso foi alguns anos antes de eu conhecer a internet na universidade, então não havia uma forma fácil de acessar materiais de aprendizado. Antes disso, eu tinha tentado aprender C algumas vezes sem muito sucesso; só depois de aprender TP consegui transferir para C o que tinha aprendido em Pascal, e mesmo assim com a ajuda de outro excelente produto da Borland, o C++ Builder
No fim dos anos 80, depois de assembly 6809E, variantes de BASIC estruturado e batch/shell, a primeira linguagem de programação “de verdade” que aprendi foi Turbo Pascal. Quando entrei em Ciência da Computação no começo dos anos 90, as aulas do primeiro ano também eram ministradas com Borland Pascal, então essa experiência foi bem útil
Alguns anos depois, graças à minha base em Pascal, acabei trabalhando por cerca de 5 anos desenvolvendo apps customizados em Delphi, o que levou em seguida a um trabalho na Borland testando o Kylix e a IDE do C++Builder. Bons tempos
Ainda sinto falta do Delphi. Hoje é algo tão óbvio que, se uma IDE não tiver plugins, isso é visto como uma falha fatal; mas naquela época, a ideia de uma biblioteca de componentes e um ambiente de codificação facilmente extensíveis na própria linguagem parecia pura magia. Era muito divertido mexer na VCL e na própria IDE
É uma pena que a Borland tenha ido atrás do mercado enterprise, deixado os desenvolvedores de base para trás e, na prática, matado o crescimento da adoção pela comunidade. Pelo menos até por volta do Delphi 7, era um conjunto realmente incrível
Meu primeiro contato com TP foi no inverno de 1993, quando eu tinha 14 anos e pirateei uma cópia em um BBS warez. Diferente de simplesmente executar arquivos .BAS, a força primordial que senti ao compilar meu próprio EXE foi extasiante
Comecei a modificar o Renegade BBS e a criar programas door; também tentei criar worms, cavalos de Troia e vírus, embora tenha fracassado. Essa experiência mudou minha vida e abriu o caminho que me trouxe para a área de tecnologia. Além disso, já corrigi minhas tendências transgressoras da adolescência. Tenho uma grande dívida com a Borland
Alguns anos depois, aos 16, desenvolvi um pequeno app para gerenciar os clientes do meu pai e realmente recebi por isso; com parte desse dinheiro, comprei uma versão legítima do TP6. Bons tempos
O Free Pascal ainda tem um modo parecido com o TP IDE original. Mas, como eles próprios admitem, o código está apodrecendo e ainda depende muito das peculiaridades antigas da plataforma MS-DOS original
É uma pena não existir uma versão semelhante que possa ser usada no terminal como editor comum, como neovim ou emacs, e que se integre a recursos voltados a IDEs modernas, como LSP, parsers tree-sitter e Debug Adapter Protocol. Isso poderia mudar o jogo ao editar código remoto via conexões SSH/terminal
É difícil exagerar o quanto o Turbo Pascal era mais rápido que os concorrentes. Era tão rápido que dava para desconfiar que havia algum truque, e os programas gerados também eram mais rápidos
Para a época, era uma obra-prima, e os elogios que recebeu foram plenamente merecidos
Foi assim que aprendi que um compilador maduro era melhor que um compilador em versão 1.0
Lembro de ter compilado uma versão da série FPC 2.0 alguns anos atrás em um PC com Windows e 512 MB de RAM, e não levou nem 5 minutos
https://www.tmssoftware.com/site/blogold.asp?post=759
Quando eu era criança, o simpático dono de uma loja de informática me vendeu, em ótimas condições, um PC semicompatível rodando MS-DOS 1.25. Foi mais ou menos em troca de eu cortar a grama umas cem vezes e cuidar de criança
Ele vendia o Turbo Pascal para MS-DOS genérico, ou seja, uma versão que não presumia o BIOS do PC, em disquetes de 8 polegadas, e transferiu para o formato de 5,25 polegadas de 160 KB que meu semicompatível usava. Espero ter sido, na época, tão grato quanto me sinto hoje. Aquilo deu início à minha carreira
No começo dos anos 80, eu usava no Apple ][+ e no //e o Apple Pascal, ou seja, um ambiente baseado no UCSC p-system Pascal, e depois migrei para o Turbo Pascal no DOS. O Turbo Pascal era empolgante de verdade. Era uma experiência excelente graças ao compilador muito rápido, ao bom feedback, ao editor colorido e aos atalhos de teclado do WordStar, com os quais eu já estava familiarizado
Também me lembro de quando meus programas ficaram grandes o bastante para precisar usar o recurso de overlays. Era um recurso que, no DOS, permitia carregar diferentes partes do programa praticamente como páginas
Também me lembro de ter conhecido David Intersimone, que foi um excelente embaixador da Borland, em algum momento dos anos 80, provavelmente mais para o fim da década. Foi quando ele visitou nossa universidade a convite do capítulo local da ACM
Curiosamente, Turbo Pascal foi a primeira linguagem de programação de alto nível que aprendi, e o ambiente era um Macintosh Plus. Só mais tarde descobri que Turbo Pascal era mais associado ao mundo dos PCs
Na faculdade, comprei meu primeiro computador Apple, um Macintosh Plus, com empréstimo estudantil, e por acaso vi um exemplar do Turbo Pascal para Mac nos classificados do jornal da universidade. Um professor estava vendendo por cerca de 40 dólares, então comprei na hora
Felizmente havia manual, mas as ferramentas de desenvolvimento para Macintosh eram muito simples. Não havia ResEdit, e existia um aplicativo estranho chamado R-Maker, que exigia criar recursos do Macintosh em arquivos de texto e depois passá-los pela ferramenta para gerar o resource fork
Alguns dos meus primeiros apps foram implementações em Turbo Pascal de algoritmos publicados na coluna Computer Recreations da Scientific American. Por sorte, quase não precisavam de UI, então geralmente bastava uma janela e alguns botões
Mais tarde conheci o THINK Pascal, uma IDE muito mais centrada no Mac, e migrei para ela; depois ainda mergulhei no THINK C
Ainda assim, sempre vou guardar uma lembrança carinhosa do Turbo Pascal. Naquela época em que eu entrava em um mundo novo e inexplorado, foi o Turbo Pascal que abriu a porta para mim