Histórico das Linguagens de Programação
273 pág.

Histórico das Linguagens de Programação


DisciplinaProgramação I19.838 materiais236.772 seguidores
Pré-visualização50 páginas
PDF gerado usando o pacote de ferramentas em código aberto mwlib. Veja http://code.pediapress.com/ para mais informações.
PDF generated at: Tue, 04 Feb 2014 22:30:48 UTC
História das linguagens de
programação
História, conceitos e paradigmas
Conteúdo
Páginas
História das linguagens de programação 1
História das Linguagens de Programação 1
Pioneiros 7
Charles Babbage 7
Ada Lovelace 10
Herman Hollerith 12
Alan Turing 14
Alonzo Church 18
Konrad Zuse 20
Primeiros computadores 22
Z1 22
Z2 23
Z3 24
Z4 24
O Colossus 25
Harvard Mark I 26
ENIAC 26
EDVAC 28
os anos 40 30
Plankalkül 30
Os anos 1950 - As primeiras linguagens 33
Short Code 33
Sistema A-0 34
Personagem: John Backus 34
Speedcoding 36
Personagem: Grace Hopper 37
Flow-Matic 39
Fortran 39
COMTRAN 47
COMIT 47
ALGOL 58 48
FACT 48
Outros paradigmas nos anos 50 50
IPL 50
Personagem: John McCarthy 53
LISP 55
COMIT 61
RPG 62
Os anos 60 e o paradigma imperativo 64
COBOL 64
Personagem: Peter Naur 71
ALGOL 60 73
SNOBOL 73
CPL 74
BASIC 75
PL/I 83
BCPL 88
Icon 89
ALGOL 68 95
B 99
Outros paradigmas nos anos 60 104
APL 104
Simula 106
Logo 109
Os anos 70, a programação estruturada e a simplicidade 112
Personagem: Niklaus Wirth 112
Pascal 113
Personagem: Dennis Ritchie 119
Personagem: Ken Thompson 122
C 123
Ada 132
Outros paradigmas nos anos 70 138
BLISS 138
Forth 140
Smalltalk 141
Prolog 146
Scheme 158
ML 162
AWK 164
Os anos 80 e a orientação a objeto 169
Ada 169
Erlang 174
Modula 178
C++ 178
Common Lisp 192
Miranda 194
Eiffel 195
Perl 201
FL 207
Os anos 90 - linguagens multiparadigma 208
Dylan 208
Haskell 209
Python 216
Gödel 228
Lua 229
Java 235
PHP 242
Ruby 250
Os anos 2000 259
C\u266f 259
Clojure 259
Extensões orientadas à aspectos 261
AspectJ 261
Referências
Fontes e Editores da Página 263
Fontes, Licenças e Editores da Imagem 266
Licenças das páginas
Licença 268
1
História das linguagens de programação
História das Linguagens de Programação
Este artigo discute os principais desenvolvimentos na história das linguagens de programação.
Antes de 1940
As linguagens de programação são anteriores ao advento do primeiro computador moderno. De início as linguagens
eram apenas códigos.
Durante um período de nove meses entre 1842-1843, Ada Lovelace traduziu as memórias do matemático italiano
Luigi Menabrea sobre a a mais nova máquina proposta por Charles Babbage, a sua máquina analítica. Com o artigo,
ela anexou uma série de anotações que especificavam em completo detalhe um método para calcular números de
Bernoulli com a máquina, reconhecido por alguns historiadores como o primeiro programa de computador do
mundo. Mas alguns biógrafos debatem a medida de suas contribuições originais versus as de seu marido.
O tear de Jacquard, inventado em 1801, usava furos em cartões perfurados para representar os movimentos do braço
do tear ao realizar costuras, a fim de gerar padrões decorativos automaticamente.
Herman Hollerith percebeu que poderia codificar a informação em cartões perfurados, quando ele observou que o
condutor de trens controlava a presença dos titulares dos bilhetes de trem com a posição dos furos no bilhete.
Hollerith, então, começou a codificar os dados do censo de 1890 em cartões perfurados.
Os primeiros códigos para computador eram especializados segundo as aplicações. Nas primeiras décadas do século
XX, os cálculos numéricos eram baseados em números decimais. Eventualmente, se percebeu que a lógica podia ser
representada com números, tão bem como com as palavras. Por exemplo, Alonzo Church foi capaz de expressar o
cálculo lambda de uma maneira formalizada. A máquina de Turing era uma abstração do funcionamento da máquina
de uma fita de marcação, por exemplo, em uso em empresas de telefonia. No entanto, ao contrário do cálculo
lambda, os código elaborados por Turing não serviam como uma base para linguagens de alto nível - a sua utilização
principal era na análise rigorosa da complexidade algorítmica.
Como muitos "primeiros" na história, a primeira linguagem de programação moderna é difícil de ser identificada. No
início, as restrições do hardware definiam a linguagem. Cartões perfurados dispunham de até 80 colunas, mas
algumas das colunas tinham que ser usados para um número de seqüência de cada cartão. Fortran incluía algumas
palavras-chave que eram as mesmas palavras em Inglês, como "IF" (se), "GOTO" (vá para) e "CONTINUE"
(continue). O uso de um tambor magnético para a memória significava que os programas de computador também
tinham que ser intercalados com as rotações do tambor. Assim, os programas eram mais dependentes do hardware do
que hoje.
Para algumas pessoas, a resposta depende de quanta energia e legibilidade humana são necessárias antes que o status
de "linguagem de programação" seja concedido. Os teares de Jacquard e a máquina diferencial de Charles Babbage,
ambos tinham linguagens simples e extremamente limitadas para descrever as ações que estas máquinas deviam
executar. Alguns podem até alegar que as perfurações de cartões para pianos possam ser vistas como uma linguagem
de propósito específico, embora não destinadas ao consumo humano.
História das Linguagens de Programação 2
Os anos 1940
Na década de 1940 os primeiros computadores elétricos, reconhecidamente modernos, foram criados. A velocidade
limitada capacidade da memória forçava os programadores a escrever a mão economicamente programas em
linguagem de montagem (linguagem de máquina). Logo se descobriu que a programação em linguagem assembly
exigia um grande esforço intelectual e era muito sujeita a erros. Em 1948, Konrad Zuse [1] publicou um artigo sobre
a sua linguagem de programação Plankalkül. No entanto, esta não foi implementada em sua época e suas
contribuições originais foram isoladas de outros desenvolvimentos.
Algumas linguagens importantes que foram desenvolvidas durante este período incluem:
\u2022 1943 - Plankalkül (Konrad Zuse)
\u2022 1943 - ENIAC coding system
\u2022 1949 - C-10
Os anos 1950´s e 1960´s
Na década de 1950 as primeiras três linguagens de programação modernas, cujos descendentes ainda estão em uso
difundido hoje foram concebidas:
\u2022 FORTRAN (1954), a "FORmula TRANslator", inventada por John Backus e outros.;
\u2022 LISP, a "LISt Processor", inventada por John McCarthy e outros.;
\u2022 COBOL, a COmmon Business Oriented Language, criada pelo Short Range Committee, com grande influência
de Grace Hopper.
Outro marco na década de 1950 foi a publicação, por um comitê de cientistas americanos e europeus, de "uma nova
linguagem para os algoritmos", a ALGOL 60 através da publicação do relatório "The ALGOL 60 Report (the
"ALGOrithmic Language")". Este relatório consolidou muitas idéias que circulavam na época e apresentou duas
inovações chave quanto ao projeto de linguagens:
\u2022\u2022 Estrutura de blocos aninhados: pedaços significativos de código poderiam ser agrupados em bloco de instruções,
sem ter que ser transformados em procedimentos separados e ser explicitamente chamados;
\u2022\u2022 Escopo léxico: um bloco podia ter suas próprias variáveis não acessíveis fora do bloco, e muito menos
manipuláveis de fora do bloco.
Outra inovação, relacionada a esta última, foi na forma como a linguagem foi descrita:
\u2022 Uma notação matemática exata, Backus-Naur (BNF), foi utilizada para descrever a sintaxe da linguagem. Quase
todas as linguagens de programação posteriores utilizaram uma variante da BNF para descrever a parte livre de
contexto de sua sintaxe.
Algol 60 foi particularmente influente na concepção das linguagens posteriores, algumas das quais logo se tornaram
mais populares. Os grandes sistemas da Burroughs foram projetados para serem programados em um subconjunto
estendido do Algol, a WFL (Work Flow Language).
Algumas ideias-chave da linguagem Algol foram tomadas, produzindo-se a linguagem ALGOL 68:
\u2022\u2022 A sintaxe e semântica se tornaram ainda