# Turbo Pascal

O Turbo Pascal é um ambiente de desenvolvimento integrado e um compilador para a linguagem de programação Pascal, criado pela empresa Borland.
O desenvolvimento do compilador Turbo Pascal, pela Borland, teve uma grande importância no sucesso da linguagem Pascal, já que não era apenas um simples compilador, mas um ambiente de desenvolvimento, onde se podia construir e depurar o código, o que foi uma novidade para a época. Devido a sua grande utilização a linguagem de programação Pascal foi incorporando as novas tecnologias da área de linguagens de programação, como por exemplo a programação orientada a objectos, o que deu origem a uma versão da linguagem popularmente conhecida como Object Pascal (esta versão foi implementada junto com o IDE Delphi da Borland).
O Turbo Pascal foi um produto comercial em que era necessário adquirir uma licença de uso para utilizá-lo. Agora está livremente disponível na Internet.
A sua primeira versão foi realizada em 1983 no mercado norte-americano. Na época seu preço de venda era 49,99 dólares. Mais tarde, em meados dos anos 90, apareceu uma versão da linguagem, mas por parte da Microsoft, o Microsoft Pascal, que tentou fazer concorrência ao Turbo Pascal que na época já estava na versão 5.5. O Microsoft Pascal foi superado pelo Turbo Pascal 5.5 devido à sua boa qualidade e baixo preço.
Em 1995 a Borland deixou de desenvolver o Turbo Pascal.

## Origem

A linguagem de programação Pascal originou do ALGOL, uma linguagem de programação voltada para computação científica. Num congresso em Zurique, um comitê internacional designou o ALGOL como uma linguagem independente de plataforma. Isto deu mais liberdade para as características que eles poderiam colocar na linguagem, mas também tornou mais difícil a escrita de compiladores para ela. Muitos fabricantes de computador não fizeram compiladores. A carência de compiladores em muitas plataformas, combinada com sua carência de ponteiros e muitos tipos de dados básicos tal como o tipo caracter, fez com que ALGOL não fosse amplamente aceite. Cientistas e engenheiros migraram para o FORTRAN, uma linguagem de programação que estava disponível em muitas plataformas. O ALGOL acabou quase totalmente abandonado exceto como uma linguagem para a descrição de algoritmos.

## Wirth Inventa o Pascal

Nos anos 60, muitos cientistas da computação trabalharam na extensão do ALGOL. Um desses cientistas era o Dr. Niklaus Wirth do Instituto Federal Suíço de Tecnologia, um membro do grupo original que criou o ALGOL. Em 1971, ele publicou a sua especificação para uma linguagem altamente estruturada que lembrava o ALGOL em muitos pontos. Ele designou-a de Pascal em homenagem ao filósofo e matemático francês Blaise Pascal, nascido no século 17, que construiu a pascalina - a 1ª calculadora mecânica funcional.
A linguagem Pascal é bastante orientada a dados, dando ao programador a capacidade de definir tipos de dados personalizados. Com esta liberdade veio a rígida verificação de tipos, que garantiu que tipos não se misturariam. a linguagem Pascal pretendia ser uma linguagem educacional, e foi amplamente adotada como tal. É de escrita mais livre, diferente da linguagem FORTRAN, assim os estudantes não tinham que se preocupar com formatação. Além disso, Pascal se parece muito com uma linguagem natural, tornando muito fácil o entendimento do código escrito com ele.
Uma das coisas que fez perder a popularidade do ALGOL foi a dificuldade de criar um compilador. Wirth evitou isso fazendo com que seu compilador Pascal compilasse para um código objeto intermediário, independente da plataforma. Um outro programa transformava esse código intermediário em código executável. O Prof. Ken Bowles da Universidade da Califórnia em San Diego (UCSD) agarrou a oportunidade que isto oferecia para adaptar o compilador Pascal para o Apple II, o microcomputador mais popular da época, criando uma máquina virtual chamada "Pascal P-Code Machine" (semelhante ao que se fez com o Java anos mais tarde), permitindo que a linguagem Pascal se tornasse um padrão, sendo amplamente usado em universidades. Isto foi possível também pelo baixo custo do Apple II comparado aos mainframes, que eram necessários na hora de executar outras linguagens tais como FORTRAN.

## Pascal Torna-se Padrão

Por volta dos anos 80, a linguagem Pascal já tinha se tornado amplamente aceita nos meios académicos. Duas coisas aconteceram para torná-lo mais popular:
* Primeiro, o Serviço de Testes Educacionais nos Estados Unidos (Educational Testing Service) decidiu adicionar um exame de Ciência da Computação aos seus exames de avaliação para estudantes de escolas secundárias ao ensino académico. Para este exame, foi escolhida a linguagem Pascal. Por causa disso, os estudantes de vários graus de ensino começaram a aprender Pascal. A linguagem Pascal permaneceu como linguagem oficial nesses exames até 1999, quando foi substituído por C++, que deu lugar ao Java logo depois.
* Segundo, uma pequena companhia chamada Borland lançou o compilador Turbo Pascal para a plataforma IBM Personal Computer. Este compilador foi revolucionário, criando atalhos e algumas modificações na linguagem Pascal padrão, mas mantiveram a sua maior vantagem: velocidade. O Turbo Pascal compilava a uma taxa estonteante: milhares de linhas num minuto. Naquela época, os compiladores disponíveis para a plataforma PC eram lentos e gigantescos. Quando o Turbo Pascal apareceu, ele era um milagre. Logo, o Turbo Pascal tornou-se o padrão de fato para programação em PC. Quando revistas de computação publicavam códigos fonte para programas utilitários, eles eram geralmente em assembly ou em Turbo Pascal.
Ao mesmo tempo, a Apple lançou sua série de computadores Macintosh. Desde que o UCSD Pascal foi implementado pela primeira vez no Apple II, a Apple fez da linguagem Pascal a linguagem de programação padrão para o Macintosh. Quando os programadores receberam a API e códigos de exemplo para programação em Mac, eles eram todos em Pascal.
Em milhares de universidades por todo o mundo a linguagem Pascal é aceite tanto por alunos e docentes, fazendo parte das disciplinas de cursos de informática. A razão deve-se por ser considerada uma linguagem mais estruturada, de fácil aprendizagem e intuitiva que as anteriores (Fortran, Cobol, Assembly, etc), com amplo suporte a depuração de erros.

## Extensões

Da versão 1.0 até a 7.0 do Turbo Pascal, a Borland continuou a expandir a linguagem. Uma das críticas da versão original da linguagem Pascal era a carência de compilação separada para módulos. Wirth até criou uma nova linguagem de programação, Modula-2, para resolver esse problema. A Borland adicionou esse conceito de módulos ao Pascal, através de units.
Na versão 7.0, muitas características avançadas foram adicionadas. Uma delas foi a DPMI (DOS Protected Mode Interface), uma forma de executar programas DOS em modo protegido, obtendo velocidade extra e liberdade de quebrar a barreira de 640 Kilobytes instituído pelo modo real da arquitetura IBM PC. O Turbo Vision, um sistema com janelas, baseado em texto, permitiu aos programadores criar interfaces interessantes quase que instantaneamente. A linguagem Pascal até se tornou orientada para objetos, quando a versão 5.5 adotou as extensões do Apple Object Pascal. Quando o Windows 3.0 foi lançado, a Borland criou o Turbo Pascal para Windows, unindo a velocidade e facilidades do Pascal à interface gráfica para usuários (GUI). Parecia que o futuro do Pascal estava garantido.
No entanto a Borland, a empresa que mais investiu em tecnologias e compiladores Pascal, decide abandonar esta linguagem de programação em 1995, motivada pela forte concorrência das linguagens Microsoft Visual C++ e Visual Basic. Anos mais tarde, a mesma empresa desenvolve o Delphi - sucessor de Turbo Pascal - mais vocacionado para a arquitectura API das plataformas Windows.