Você está na página 1de 276

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

13

Alan Turing

15

Alonzo Church

19

Konrad Zuse

21

Primeiros computadores

23

Z1

23

Z2

24

Z3

25

Z4

25

O Colossus

26

Harvard Mark I

27

ENIAC

27

EDVAC

29

os anos 40

31

Plankalkül

31

Os anos 1950 - As primeiras linguagens

34

Short Code

34

Sistema A-0

35

Personagem: John Backus

35

Speedcoding

37

Personagem: Grace Hopper

38

Flow-Matic

40

Fortran

41

COMTRAN

49

COMIT

49

ALGOL 58

50

FACT

50

Outros paradigmas nos anos 50

52

IPL

52

Personagem: John McCarthy

55

LISP

57

COMIT

63

RPG

64

Os anos 60 e o paradigma imperativo

66

COBOL

66

Personagem: Peter Naur

73

ALGOL 60

75

SNOBOL

75

CPL

76

BASIC

77

PL/I

85

BCPL

90

Icon

91

ALGOL 68

97

B

101

Outros paradigmas nos anos 60

106

APL

106

Simula

108

Logo

111

Os anos 70, a programação estruturada e a simplicidade

114

Personagem: Niklaus Wirth

114

Pascal

115

Personagem: Dennis Ritchie

121

Personagem: Ken Thompson

124

C

125

Ada

134

Outros paradigmas nos anos 70

140

BLISS

140

Smalltalk

143

Prolog

148

Scheme

160

ML

164

AWK

166

Os anos 80 e a orientação a objeto

171

Ada

171

Erlang

176

Modula

180

C++

180

Common Lisp

194

Miranda

196

Eiffel

197

Perl

203

FL

209

Os anos 90 - linguagens multiparadigma

210

Dylan

210

Haskell

211

Python

218

Gödel

230

Lua

231

Java

237

PHP

244

Ruby

253

Os anos 2000

262

C♯

262

Clojure

262

Extensões orientadas à aspectos

264

AspectJ

264

Referências

Fontes e Editores da Página

266

Fontes, Licenças e Editores da Imagem

269

Licenças das páginas

Licença

271

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:

• 1943 - Plankalkül (Konrad Zuse)

• 1943 - ENIAC coding system

• 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:

• FORTRAN (1954), a "FORmula TRANslator", inventada por John Backus e outros.;

LISP, a "LISt Processor", inventada por John McCarthy e outros.;

• 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:

••

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;

••

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:

• 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 conceã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:

•• A sintaxe e semântica se tornaram ainda mais ortogonais, com rotinas anônimas, um sistema recursivo de digitação com funções de ordem superior, etc;

• não somente a parte livre de contexto da linguagem, mas a sintaxe da linguagem completa e a semântica foram definidos formalmente, em termos da gramática de Van Wijngaarden, um formalismo desenvolvido especificamente para esta finalidade.

Os recursos pouco utilizados de Algol 68 (por exemplo, blocos simultâneos e paralelos) e seu complexo sistema de atalhos sintáticos e coerções de tipo automático tornou a linguagem impopular entre os implementadores e ganhou a reputação de ser difícil. Niklaus Wirth realmente saiu do comitê de projeto para criar uma linguagem mais simples:

História das Linguagens de Programação

3

Panorama das duas décadas:

• 1952 - Autocode

• 1954 - FORTRAN

• 1955 - FLOW-MATIC (antecessor do COBOL)

• 1957 - COMTRAN (antecessor do COBOL)

• 1958 - LISP

• 1958 - ALGOL 58

• 1959 - FACT (antecessor do COBOL)

• 1959 - COBOL

• 1962 - APL

• 1962 - Simula

• 1964 - BASIC

• 1964 - PL/I

1967-1978: estabelecendo os paradigmas fundamentais

O período compreendido entre o final dos anos 1960 à década de 1970 trouxe um grande florescimento de

linguagens de programação. A maioria dos principais paradigmas de linguagem agora em uso foram inventados durante este período:

Simula, inventada nos anos 1960 por Nygaard e Dahl como um super conujunto de Algol 60, foi a primeira linguagem a suportar o conceito de classes.

C, uma das primeiras linguagens de programação de sistemas, foi desenvolvido por Dennis Ritchie e Ken Thompson nos laboratórios da Bell entre 1969 e 1973.

Smalltalk (meados de 1970) forneceu uma base completa para o projeto de uma linguagem orientada a objetos.

Prolog, projetada em 1972 por Colmerauer, Roussel, e Kowalski, foi a primeira linguagem de programação do paradigma lógico.

ML built a polymorphic type system (inventada por Robin Milner em 1973) uma linguagem funcional, baseada em Lisp, estaticamente tipada.

Cada uma dessas línguas gerou toda uma família de descendentes, e linguagens mais modernas contam, pelo menos, com uma delas em sua ascendência.

A década de 1960 e 1970 também viu um considerável debate sobre os méritos da "programação estruturada", que,

entre outros aspectos,envolvia a programação sem o uso de Goto. Este debate foi estreitamente relacionado com projeto de linguagem: algumas linguagens não incluíram o comando GOTO, ou o desestimularam, o que obrigou o programador a utilizar a programação estruturada. Apesar de o debate ter ficado quente na época, quase todos os programadores agora concordam que, mesmo em linguagens que fornecem um comando de desvio incondicional como o GOTO, é um mau estilo de programação usá-lo, exceto em raras circunstâncias. Como resultado, as gerações posteriores de projetistas da linguagem consideram o debate em torno da programação estruturada tedioso e até desconcertante.

Algumas linguagens importantes que foram desenvolvidas durante este período incluem:

• 1970 - Pascal

• 1970 - Forth

• 1972 - C

• 1972 - Smalltalk

• 1972 - Prolog

• 1973 - ML

História das Linguagens de Programação

4

• 1978 - SQL (inicialmente apenas uma linguagem de consulta, mais tarde estendido com construções de programação)

Os anos 1980: consolidação, módulos, performance

Os

anos 1980 foram anos de relativa consolidação. C++ combinou orientação a objetos e programação de sistemas.

O

governo dos Estados Unidos padronizou a Ada, uma linguagem de programação de sistemas destinados à

utilização por parte dos contratantes de defesa. No Japão e em outros lugares, vastas somas foram gastas investigando as chamadas linguagens de programação de quinta geração que incorporavam a programação lógica em suas construções. A comunidade de linguagens funcionais se dedicou a padronizar a ML e o Lisp. Ao invés de inventar novos paradigmas, todos estes esforços visaram aperfeiçoar as idéias inventadas na década anterior.

No entanto, uma tendência nova e importante na concepção de linguagens foi o aumento do foco na programação de sistemas de larga escala com o uso de módulos, ou em unidades organizacionais de código de larga-escala. As linguagens Modula, Ada e ML desenvolveram notáveis sistemas de módulos na década de 1980. Sistemas modulares muitas vezes eram associados com a programação genérica construções --- genéricas vindo a ser, em essência, módulos parametrizados.

Embora os principais paradigmas novos para as linguagens de programação não tivessem aparecido, muitos pesquisadores expandiram as idéias das linguagens existentes adaptando-os para novos contextos. Por exemplo, as linguagens dos sistemas Argus e Emerald adaptaram a programação orientada a objeto para os seus sistemas distribuidos.

A década de 1980 também trouxe avanços na implementação das linguagens de programação. O movimento RISC,

em arquitetura de computadores postulou que o hardware deveria ser concebido para os compiladores ao invés de ser voltado a programadores assembly. Ajudado por melhorias na velocidade dos processadores que permitiu cada vez mais técnicas agressivas de compilação, o movimento RISC despertou maior interesse na tecnologia de compilação para linguagens de alto nível.

A tecnologia de linguagens continuou ao longo destas linhas durante a década de 1990.

Algumas linguagens importantes que foram desenvolvidas durante este período incluem:

• 1983 - Ada

• 1983 - C++

• 1985 - Eiffel

• 1987 - Perl

• 1989 - FL (Backus)

Os anos 1990's: A Era da Internet

A década de 1990 não viu nenhuma novidade fundamental, mas a recombinação e maturação das idéias antigas. Uma

filosofia de grande importância era a produtividade do programador. Muitas linguagens com "aplicações de desenvolvimento rápido" (RAD) surgiram, geralmente vindo com um IDE, coleta de lixo, e eram descendentes de linguagens mais antigas. Todas essas linguagens foram orientadas a objeto. Entre estas estavam a Object Pascal, Visual Basic, e C#. Java era uma linguagem mais conservadora, que também incluiu a coleta de lixo e recebeu muita atenção. Mais radicais e inovadoras do que as línguas RAD foram as novas linguagens de scripting. Estas não descenderam diretamente das outras linguagens e contaram com sintaxes novas e incorporação mais liberal de novas funcionalidades. Muitos consideram essas linguagens de scripting mais produtivas do que até mesmo as linguagens

RAD, mas muitas vezes, por causa da facilidade com que pequenos programas podem ser escritos e mantidos. No entanto, linguagens de scripting vieram a ser mais proeminentes usadas em conexão com a web.

Algumas linguagens importantes que foram desenvolvidas durante este período incluem:

• 1990 - Haskell

História das Linguagens de Programação

5

• 1991 - Python

• 1991 - Java

• 1993 - Ruby

• 1993 - Lua

• 1994 - ANSI Common Lisp

• 1995 - JavaScript

• 1995 - PHP

• 2000 - C#

• 2008 - JavaFX Script

Tendências Atuais

A evolução das linguagens de programação continua, tanto na indústria quanto na pesquisa. Algumas das tendências

atuais incluem:

••

Mecanismos para a adição de segurança e verificação da confiabilidade para a linguagem: verificação estática prolongada, controle de fluxo de informação, estático segurança em threads.

Mecanismos alternativos de modularidade: mixin s, Delegação de programação, programação orientada a aspectos.

••

Desenvolvimento de software orientado a componentes.

Metaprogramação, Reflexão ou acesso a árvores de sintaxe abstratas.

••

Maior ênfase na distribuição e mobilidade.

Integração com bases de dados, incluindo XML e bancos de dados relacionais.

Suporte para Unicode de forma que o código-fonte não esteja restrito aos caracteres contidos no código ASCII; permitindo, por exemplo, o uso de scripts não latinos ou pontuação estendida.

XML para a interfaces gráficas (XUL, XAML).

Pessoas de destaque na história das linguagens de programação

John Backus, inventor do Fortran.

John McCarthy, inventor do LISP.

Alan Cooper, desenvolveu o Visual Basic.

Edsger W. Dijkstra, desenvolveu o framework de programação adequada.

James Gosling, desenvolveu a linguagem Oak, precursora do Java.

Anders Hejlsberg, desenvolveu o Turbo Pascal e o C#.

Grace Hopper, desenvolveu o Flow-Matic, influenciando o COBOL.

Kenneth E. Iverson, desenvolveu o APL.

Bill Joy, inventor do vi, um dos primeiros autores do BSD Unix, e criador do SunOS, que veio a se tornar o sistema operacional Solaris.

Alan Kay, Pioneiro da programação orientada a objeto, e autor do Smalltalk.

Brian Kernighan, co-autor do primeiro livro sobre a linguagem C junto com Dennis Ritchie, co-autor das linguagens AWK e AMPL.

John von Neumann, autor do conceito de Sistema Operacional.

Dennis Ritchie, inventor do C.

Bjarne Stroustrup, desenvolveu o C++.

Ken Thompson, inventor do Unix.

Niklaus Wirth inventor do Pascal e Modula.

Rasmus Lerdorf criador da linguagem PHP.

História das Linguagens de Programação

6

Bibliografia

• CAMPBELL-KELLY, Martin. From Airline Reservations to Sonic the Hedgehog: A History of the Software Industry. Cambridge, Massachusetts: The MIT Press, 2003. 372 p. ISBN 0-262-03303-8

• CERUZZI, Paul E

A History of Modern Computing. Cambridge, Massachusetts: The MIT Press, 1998. 398 p.

ISBN 0-262-03255-4

• CORTADA, James W

A Bibliografic Guide to the History of Computing, Computers, and the Information

Processing Industry. New York: Greenwood Press, 1990. 644 p. ISBN 0-313-26810-X

• IFRAH, Georges. The Universal History of Computing. New York: John Wiley and Sons, 2001. 410 p. ISBN

0-471-39671-0

• METROPOLIS, N.; HOWLETT, J; ROTA, Gian-Carlo(editores). A History of Computing in the Twentieth Century. New York: Academic Press, 1980. 659 p. ISBN 0-12-491650-3

• ORGANICK, E. I.;FORSYTHE, A. I.;PLUMMER, R. P

Programming Language Structures. New

York: Academic Press, 1978. 659 p. ISBN 0-12-528260-5

• SAMMET, Jean E. Programming Languages: History and Fundamentals. Englewood Cliffs, New Jersey: Prentice Hall, 1969. 785 p. ISBN 0-13-729988-5

• WEXELBLAT, Richard L.(Editor). History of Programming Languages. New York: Academic Press, 1981. 758 p. ISBN 0-12-745040-8

Ligações externas

• The History of Programming Languages (http://hopl.murdoch.edu.au) by Diarmuid Pigott

• History and evolution of programming languages (http://www.scriptol.com/programming/history.php).

• The Evolution of Programming Languages (http://www.ulb.ac.be/di/rwuyts/INFO020_2003/ grogono-evolution.pdf) by Peter Grogono. PDF.

• Graph of programming language history (http://www.levenez.com/lang/history.html)

7

Pioneiros

Charles Babbage

Charles Babbage

 
Babbage   Ciência da computação , matemática Charles Babbage em 1860 Nacionalidade Britânico

Charles Babbage em 1860

Nacionalidade

Nacionalidade Britânico

Nascimento

26

Local

Morte

18

de Outubro de 1871 (79 anos)

Local

 

Atividade

Campo(s)

Instituições

Prêmio(s)

 

Assinatura

 
 

Charles Babbage (Londres, 26 de Dezembro de 1791 Londres, 18 de Outubro de 1871) foi um cientista, matemático, filósofo, engenheiro mecânico e inventor inglês nascido em Teignmouth, Devon que originou o conceito de um computador programável.

Charles Babbage é mais conhecido e, de certa forma, referenciado como o inventor que projetou o primeiro computador de uso geral, utilizando apenas partes mecânicas, a máquina analítica. Ele é considerado o pioneiro e pai da computação. Seu invento, porém, exigia técnicas bastante avançadas e caras na época, e nunca foi construído. Sua

Charles Babbage

8

invenção também não era conhecida dos criadores do computador moderno.

Mais recentemente, entre 1985 e 1991, o Museu de Ciência de Londres construiu outra de suas invenções inacabadas, a máquina diferencial 2, usando apenas técnicas disponíveis na época de Babbage.

Nascimento

O local de nascimento de Babbage é controverso, mas ele provavelmente nasceu na Inglaterra, mais precisamente no

endereço 44 Crosby Row, Walworth Road, em Londres, Inglaterra.

Há uma pequena discrepância, provinda de três fontes, sobre a data de nascimento de Babbage. A primeira, publicada no obtuário do The Times aponta 26 de Dezembro de 1792. Entretanto, dias mais tarde, um sobrinho de Babbage escreveu dizendo que seu tio havia nascido precisamente um ano antes, em 1791. O registro paroquial de 'St. Mary's Newington', Londres, mostra Babbage sendo batizado em 06 de janeiro de 1792, apoiando um ano de nascimento de 1791.

O pai de Babbage, Benjamin Babbage, foi um banqueiro, sócio do Praeds, de 'Bitton Estate', em Teignmouth. Sua

mãe era Betsy Plumleigh Babbage. Em 1808, a família Babbage mudou-se para a antiga 'Rowdens house', a leste de Teignmouth, e Benjamin Babbage tornou-se administrador das proximidades da igreja de St. Michael.

Educação

O dinheiro de seu pai permitiu que Babbage recebesse instrução de

diversas escolas e tutores durante o curso de seu ensino fundamental. Com cerca de oito anos de idade foi enviado para uma escola de campo em Alphington, Devon perto de Exeter para se recuperar de uma febre com risco de vida. Seus pais ordenaram que a "não era para se exigir demais de seu cérebro" e Babbage sentiu que "esta grande ociosidade pode ter levado alguns dos meus raciocínios infantis". Por um tempo curto ele frequentou o King Edward VI Community College em Totnes, South Devon, mas sua saúde forçou ele de volta para professores particulares por um tempo. Ele então se juntou a 30 alunos da academia Holmwood, em Baker Street, Enfield, Middlesex sob o reverendo Stephen Freeman. A academia tinha uma biblioteca bem abastecida que levou Babbage ao amor pela matemática. Ele estudou com mais dois tutores privados depois de sair da academia.

com mais dois tutores privados depois de sair da academia. The Illustrated London News (4 de

The Illustrated London News (4 de novembro de

1871).

Charles Babbage estudou no Trinity College, em Cambridge, onde depois lecionou matemática. Ele tinha lido extensivamente Leibniz, Joseph Louis Lagrange, Thomas Simpson, e Lacroix e ficou seriamente decepcionado com o ensino da matemática disponível em Cambridge. Em resposta, ele, John Herschel, George Peacock, e vários outros amigos formaram a Analytical Society do Trinity College, em Cambridge em 1812. Babbage, Herschel e Peacock também eram amigos íntimos do futuro juiz e patrono da ciência Sir Edward Ryan. Babbage e Ryan casaram com duas irmãs. Como estudante, Babbage foi também membro de outras sociedades, como o the Ghost Club, preocupado com a investigação de fenômenos sobrenaturais, e do the Extractors Club, dedicado a libertar seus membros do hospício, caso algum dos membros fosse parar lá.

Em 1812 Babbage transferido para Peterhouse, Cambridge. Ele foi um dos melhores matemáticos em Peterhouse, mas não se formou com honras. Ao invés disso, recebeu um diploma honorário sem exame em 1814.

Eleito membro da Royal Society of London (1816), recebeu uma bolsa do governo para projectar uma calculadora com capacidade para até a vigésima casa decimal (1823).

Charles Babbage

9

Enquanto desenvolvia sua máquina era professor de matemática na University of Cambridge (1828-1839). Apresentou sua máquina analítica em 1833, tendo sido considerada o ponto de partida para os modernos computadores eletrônicos.

Publicou diversos artigos sobre matemática, estatística, física e geologia. Também colaborou para a modernização do sistema de código postal inglês, além de ser o primeiro matemático que conseguiu colocar em desuso a cifra de Vigenère, utilizando métodos de cripto-análise (análise de frequência).

Casamento, família, morte

Em 25 de Julho de 1814, Babbage se casou com Georgiana Whitmore, na Igreja de St. Michael em Teignmouth, Devon. O casal viveu em Dudmaston Hall, Shropshire (onde Babbage projetou o sistema de aquecimento central), antes de passar a morar no número 5 da rua Devonshire Street, em Portland Place, Londres.

Charles e Georgiana tiveram oito filhos, mas apenas quatro - Benjamin Babbage Herschel, Georgiana Whitmore, Dugald Bromhead Babbage e Henry Prevost - sobreviveram à infância. A esposa de Charles, Georgiana, morreu em Worcester em 1 de setembro de 1827, mesmo

ano em que seu pai, seu segundo filho (também chamado Charles) e seu filho recém-nascido Alexander morreram. Sua decisão posterior para passar um ano viajando no continente registou uma atraso na construção de suas máquinas.

registou uma atraso na construção de suas máquinas. Túmulo de Charles Babba g e no Cemitério

Túmulo de Charles Babbage no Cemitério de Kensal Green

Charles Babbage morreu aos 79 anos em 18 de Outubro de 1871, e foi sepultado em Londres no Cemitério de Kensal Green. Segundo Horsley, Babbage morreu "de insuficiência renal, secundária à cistite". [1] Em 1983, o relatório da autópsia para Charles Babbage foi descoberto e publicado mais tarde por seu trineto. [2] Uma cópia do original também está disponível.

[[11]] (É necessário ser assinante para ler). [[22]] (É necessário ser assinante para ler)

Ada Lovelace

Ada Lovelace

10

Ada Lovelace

 
 

Nacionalidade

Reino Unido

Nascimento

10

Local

Reino Unido

Morte

27

de novembro de 1852 (36 anos)

Local

Reino Unido

Conhecido(a) por

ser a primeira programadora de computadores da história

Ada Augusta Byron King, Condessa de Lovelace (10 de Dezembro de 1815 - 27 de Novembro de 1852), atualmente conhecida como Ada Lovelace, foi uma matemática e escritora inglesa e hoje é principalmente reconhecida por ter escrito o primeiro algoritmo para ser processado por uma máquina, a máquina analítica de Charles Babbage. [1] . Durante o período em que esteve envolvida com o projeto de Babbage, ela desenvolveu os algoritmos que permitiriam à máquina computar os valores de funções matemáticas, além de publicar uma coleção de notas sobre a máquina analítica. Por esse trabalho é considerada a primeira programadora de toda a história

Lovelace nasceu em 10 de dezembro de 1815 e é a única filha legítima do poeta Lord Byron e sua esposa Anne Isabella "Anabella" Byron [2][3] . Todos os outros filhos de Lorde Byron nasceram fora do casamento. [4] Byron se separou da esposa um mês depois do nascimento de Ada e deixou a Inglaterra para sempre , quatro meses depois. Acabou morrendo doente durante a Guerra da Independência Grega, quando Ada tinha oito anos de idade. A mãe de Ada promoveu o interesse de Ada em matemática e lógica , em um esforço para impedi-la de se desenvolver o que ela via como a insanidade de Lord Byron, mas Ada permaneceu interessada em seu pai e, a seu pedido, foi enterrada ao lado dele quando morreu.

Na juventude seus talentos matemáticos levaram-a a uma relação de trabalho e de amizade com o colega matemático britânico Charles Babbage e, em particular, o trabalho de Babbage sobre a Máquina Analítica . Entre 1842 e 1843, ela traduziu um artigo do engenheiro militar italiano Luigi Menabrea [5] sobre o motor, e complementou com um

Ada Lovelace

11

conjunto de sua própria autoria, que ela chamou de Anotações. Essas notas, contém um algoritmo criado para ser processado por máquinas, o que muitos consideram ser o primeiro programa de computador. Ela também desenvolveu uma visão sobre a capacidade dos computadores de irem além do mero cálculo ou processamento de números, enquanto outros , incluindo o próprio Babbage , focavam apenas nessas capacidades. [6] Sua mentalidade da "ciência poética" [7] a levou a fazer perguntas sobre a Máquina Analítica (como mostrado em suas notas ) e a examinar como os indivíduos e a sociedade se relacionam com a tecnologia como uma ferramenta de colaboração. [8]

História

Infância

Ada Lovelace nasceu Augusta Ada Byron em 10 de dezembro de 1815, em Londres, na Inglaterra. Filha do poeta George Gordon Byron, 6 º Barão Byron, e de Anne Isabella "Annabella" Milbanke, Baronesa Byron [9] . George Byron esperava ser pai de um menino e ficou desapontado quando sua esposa deu à luz uma menina. [10] Augusta recebeu esse nome por causa da meia-irmã de Byron, Augusta Leigh, e foi chamada de" Ada "pelo próprio George.

[11]

Em 16 de Janeiro 1816, Annabella, a pedido de George, se mudou para a casa de seus pais em Kirkby Mallory levando Ada com ela, que na época tinha apenas um mês de idade. [12] Embora a lei Inglesa desse ao pai a custódia total de seus filhos em caso de separação, Byron não fez nenhuma tentativa de reivindicar seus direitos 12], mas pediu para que sua irmã o mantesse informado sobre o bem-estar de Ada. [13] Em 21 de abril, Byron assinou a escritura de separação, com muita relutância, e deixou a Inglaterra para sempre alguns dias depois. [14] Além de não aceitar bem a separação amarga, Annabella fez acusações sobre o comportamento imoral de Byron, durante toda sua vida. [15] Este conjunto de eventos deixaram Ada famosa na sociedade vitoriana. Byron não tinha um relacionamento com sua filha, e nunca mais a viu. Ele morreu em 1824, quando ela tinha oito anos. Sua mãe era a única figura parental significativa em sua vida. [16] Ada não foi autorizado a ver qualquer retrato de seu pai até seu vigésimo aniversário. [17] Sua mãe se tornou Baronesa Wentworth em 1856.

Primeiro programa de computador

Em 1842 Charles Babbage foi convidado a ministrar um seminário na Universidade de Turim sobre sua máquina analítica. Luigi Menabrea, um jovem engenheiro italiano e futuro Primeiro-ministro da Itália, publicou a palestra de Babbage em francês e esta transcrição foi posteriormente publicada na Bibliothèque universelle de Genève, em 1842.

Babbage pediu a Ada para traduzir o artigo de Menabrea para o inglês, adicionando depois a tradução com as anotações que ela mesma havia feito. Ada levou grande parte do ano nesta tarefa. Estas notas, que são mais extensas que o artigo de Menabrea, foram então publicados no The Ladies' Diary e no Memorial Científico de Taylor sob as iniciais "AAL".

Em 1953, mais de cem anos depois de sua morte, as notas de Ada sobre a máquina analítica de Babbage foram republicadas. A máquina foi reconhecida como um primeiro modelo de computador e as notas de Ada como a descrição de um computador e um software.

Ada Lovelace

12

As

notas de Ada foram classificadas alfabeticamente de A a G. Na nota

G

ela descreve o algoritmo para a máquina analítica computar a

Sequência de Bernoulli. É considerado o primeiro algoritmo especificamente criado para ser implementado num computador, e Ada é recorrentemente citada como a primeira pessoa programadora por

esta razão. No entanto, a máquina não foi construída durante o tempo

de vida da Condessa de Lovelace.

[1] J. Fuegi and J. Francis, "Lovelace & Babbage and the creation of the 1843 'notes'". IEEE Annals of the History of Computing 25 No. 4 (OctoberDecember 2003):

1626. Digital Object Identifier (http://dx.doi.org/10.1109/MAHC.2003.

[2] https://en.wikipedia.org/wiki/Anne_Isabella_Byron,_Baroness_Byron [3] Ada Lovelace Biography, biography.com [4] Toole, Betty Alexandra (1987), "Poetical Science", The Byron Journal 15: 5565. [5] https://en.wikipedia.org/wiki/Frederico_Luigi,_Conte_Menabrea [6] Fuegi & Francis 2003, pp. 19, 25 [7] Toole 1998, pp. 234235 [8] Toole, Betty Alexandra (1987), "Poetical Science",The Byron Journal 15: 5565. [[99]] Stein 1985, p. 14 [[1010]] Turney 1972, p. 35. [[1111]] Stein 1985, p. 17. [[1212]] Turney 1972, p. 35

[13]

Woolley 1999, p. 80

[14] Turney 1972, pp. 3638. [15] Woolley 1999, pp. 7477 [[1616]] Turney 1972, p. 138 [[1717]] Woolley 1999, p. 10

77 [[1616]] Turney 1972, p. 138 [[1717]] Woolley 1999, p. 10 Uma ilustra ç ão ins

Uma ilustração inspirada pelo retrato criado por Alfred Edward Chalon para a en:Ada Initiative, que apóia tecnologias abertas e mulheres

Ligações externas

• Artigo sobre Ada Lovelace no blog Tecnologia Inteligente (http://blog.vettalabs.com/2008/05/11/ dia-das-maes-no-tecnologiainteligente)

Herman Hollerith

Herman Hollerith

13

Herman Hollerith

 
 
 
 

Nacionalidade

Nacionalidade Estadunidense

Nascimento

29

Local

 

Morte

17

de Novembro de 1929 (69 anos)

Local

 

Atividade

Campo(s)

Conhecido(a) por

Prêmio(s)

Herman Hollerith (Buffalo, 29 de Fevereiro de 1860 Washington, D.C., 17 de Novembro de 1929) foi um empresário norte-americano e o principal impulsionador do leitor de cartões perfurados, instrumento essencial para a entrada de informação para os computadores da época. Foi também um dos fundadores da IBM, precursor do processamento de dados.

Cartão perfurado

Certamente utilizando o princípio descoberto por Jacquard para comando automático de teares, Hermann Hollerith - funcionário do United States Census Bureau - inventou, em 1880, uma máquina para realizar as operações de recenseamento da população. A máquina fazia a leitura de cartões de papel perfurados em código BCD (Binary Coded Decimal) e efectuava contagens da informação referente à perfuração respectiva. O sistema foi patenteado em 8 de junho de 1887.

A informação perfurada no cartão era lida numa tabuladora que dispunha de uma estação de leitura equipada com uma espécie de pente metálico em que cada dente estava conectado a um circuito eléctrico.

Herman Hollerith

14

Cada cartão era colocado sobre uma taça que continha mercúrio e que estava conectada também ao mesmo circuito eléctrico do pente. Quando o pente era colocado sobre o cartão os dentes que atravessavam as perfurações fechavam o circuito eléctrico que accionava os contadores respectivos. O contador visualizava o resultado da acumulação pelo deslocamento de um ponteiro sobre um mostrador.

Invenções e negócios

Hollerith construia máquinas sob encomenda para o United States Census Bureau, que foram usadas para calcular o censo de 1890 em apenas um ano. O censo de 1880 demorou sete anos. Começou seu próprio negócio em 1896, quando fundou a Tabulating Machine Company. Os maiores centros de censo do mundo alugavam seus equipamentos e compravam seus cartões, assim como as companhias de seguros. Para fazer seu sistema funcionar, inventou o primeiro mecanismo de cartões perfurados, permitindo um operador treinado processar 200 a 300 cartões por hora e um tabulador [1] . O tabulador 1890 era especificamente criado para operar apenas cartões do censo de 1890. Um painel de fios em seu tabulador 1906 Type I permitiu-lhe executar diferentes trabalhos sem a necessidade de ser reconstruído, considerados os primeiros passos em direção à programação. Essas invenções foram uma das fundações da moderna indústria de processamento de informações [2] .

Em 1911, quatro corporações, incluindo a firma de Hollerith, se fundiram para formar a Computing Tabulating Recording Corporation. Sob a presidencia de Thomas J. Watson, ela foi renomeada para IBM.

[1] Hollerith's Electric Sorting and Tabulating Machine, ca. 1895 (http://memory.loc.gov/cgi-bin/query/r?ammem/ mcc:@field(DOCID+@lit(mcc/023))) from the American Memory archives of the Biblioteca do Congresso

[2] The Invention and Development of the Hollerith Punched Card

Ligações externas

• Hollerith, H

(April 1889). " An Electric Tabulating

System (http://www.columbia.edu/acis/history/ hh/index.html)". The Quarterly, Columbia University School of Mines X (16): 238-255.

• Página sobre Hollerith (http://sti.br.inter.net/

Hollerith (http://sti.br.inter.net/ jferro/prec009a.htm) Sepultura no Cemitério Oak Hill • Página 2 sobre

Sepultura no Cemitério Oak Hill

Alan Turing

Alan Turing

15

Alan Turing

1 5 Alan Turing Matemática , lógica e criptoanálise Estátua de Alan Turing com sua fotografia

Estátua de Alan Turing com sua fotografia na parede

Dados gerais

Nome de nascimento

Alan Mathison Turing

Nacionalidade

Residência

Nascimento

Local

Morte

7 de Junho de 1954 (41 anos)

Local

Causa

Atividade

Campo(s)

Instituições

Alma mater

Orientador(es)

Alonzo Church

Orientado(s)

Conhecido(a) por

Prêmio(s)

Officer of the Order of the British Empire Fellow of the Royal Society

Alan Turing

16

Alan Mathison Turing OBE (23 de Junho de 1912 7 de Junho de 1954) foi um matemático, gico, criptoanalista e cientista da computação britânico. Foi influente no desenvolvimento da ciência da computação e na formalização do conceito de algoritmo e computação com a máquina de Turing, desempenhando um papel importante na criação do computador moderno. Ele também é pioneiro na inteligência artificial e na ciência da computação.

Durante a Segunda Guerra Mundial, Turing trabalhou para a inteligência britânica em Bletchley Park, num centro especializado em quebra de códigos. Por um tempo ele foi chefe do Hut 8, a seção responsável pela criptoanálise da frota naval alemã. Planejou uma série de técnicas para quebrar os códigos alemães, incluindo o método da bomba eletromecânica, uma máquina eletromecânica que poderia encontrar definições para a máquina Enigma.

Após a guerra, trabalhou no Laboratório Nacional de Física do Reino Unido, onde criou um dos primeiros projetos para um computador com um programa armazenado, o ACE. Posteriormente, Turing se interessou pela química. Escreveu um artigo sobre a base química da morfogênese [1] e previu reações químicas oscilantes como a Reação de Belousov-Zhabotinsky, que foram observadas pela primeira vez na década de 1960.

A homossexualidade de Turing resultou em um processo criminal em 1952 - os atos homossexuais eram ilegais no Reino Unido na época, e ele aceitou o tratamento com hormônios femininos e castração química, como alternativa à prisão. Morreu em 1954, algumas semanas antes de seu aniversário de 42 anos, devido a um aparente auto-administrado envenenamento por cianeto, apesar de sua mãe (e alguns outros) ter considerado a sua morte acidental. Em 10 de setembro de 2009, após uma campanha de internet, o primeiro-ministro britânico Gordon Brown fez um pedido oficial de desculpas público, em nome do governo britânico, devido à maneira pela qual Turing foi tratado após a guerra.

Em 24 de dezembro de 2013, Alan Turing recebeu o perdão real da rainha Elisabete II, da condenação por homossexualidade.

Juventude e carreira

Turing nasceu em Londres enquanto seu pai estava de férias do seu trabalho no Indian Civil Service (ICS) em Chhatrapur, província de Bihar e Orissa, na Índia Britânica. Seu pai, Julius Mathison Turing (18731947), era filho de um clérigo de uma família de comerciantes escoceses que havia se estabelecido nos Países Baixos. A mãe de Alan, Ethel Sara (née Stoney; 18811976), era filha de Edward Waller Stoney, engenheiro chefe da Estra de Ferro Madras. Os Stoneys eram uma família gentia anglo-irlandeses e protestante dos condados de Tipperary e Condado de Longford. [2] O trabalho de Julius no ICS havia trazido a família para a Índia Britânica onde seu avô havia sido um general do Exército Bengali. Entretanto, Julius e Ethel queriam que seus filhos fossem criados na Inglaterra, então se mudaram para Maida Vale, Londres, onde Turing nasceu em 23 de junho de 1912. [3] Ele tinha um irmão mais velho, John (o pai de Sir John Dermot Turing, 12º Barão do baronete Turing). A comissão do serviço civil de seu pai ainda estava ativa, e durante a infância de Turing viajaram entre Hastings na Inglaterra e Índia, deixando seus dois filhos com um casal de aposentados.

Dedicação

Dedicava-se a teoremas que podiam ser comprovados, e à Teoria da Computabilidade. A sua preocupação depois de formado era o que se poderia fazer através da computação. Suas respostas iniciais vieram sob a forma teórica.

Consagração

Aos 24 anos de idade, consagrou-se com a projeção de uma máquina que, de acordo com um sistema formal, pudesse fazer operações computacionais. Mostrou como um simples sistema automático poderia manipular símbolos de um sistema de regras próprias. A máquina teórica de Turing pode indicar que sistemas poderosos poderiam ser construídos. Tornou possível o processamento de símbolos, ligando a abstração de sistemas cognitivos e a realidade concreta dos números. Isto é buscado até hoje por pesquisadores de sistemas com Inteligência Artificial (IA). Para

Alan Turing

17

comprovar a inteligência artificial ou não de um computador, Turing desenvolveu um teste que consistia em um operador não poder diferenciar se as respostas a perguntas elaboradas pelo operador eram vindas ou não de um computador. Caso afirmativo, o computador poderia ser considerado como dotado de inteligência artificial. Sua máquina pode ser programada de tal modo que pode imitar qualquer sistema formal. A ideia de computabilidade começou a ser delineada.

Devido a todos esses feitos, Alan Turing é tido como o Pai da ciência da computação.

Colossus

Em 1943, sob sua liderança foi projetado o Colossus, computador inglês que foi utilizado na Segunda Guerra Mundial. Utilizava símbolos perfurados em fitas de papel que processava a uma velocidade de 25 mil caracteres por segundo. O Colossus tinha a missão de quebrar códigos alemães ultra-secretos produzidos por um tipo de máquina de codificação chamada Enigma. Os códigos mudavam frequentemente, obrigando a que o projeto do Colossus devesse tornar a decifração bastante rápida. Turing foi depois até os Estados Unidos para um projeto de transmissão de dados transatlânticos de forma segura.

Morte

Como homossexual declarado, no início dos anos 1950 foi humilhado em público, impedido de acompanhar estudos sobre computadores, julgado por "vícios impróprios" e condenado a terapias à base de estrogénio, um hormônio (hormona) feminino o que, de fato, equivalia a castração química e que teve o humilhante efeito secundário de lhe fazer crescer seios.

Em 8 de junho de 1954, um criado de Turing encontrou-o morto, o que tinha ocorrido no dia anterior, em sua residência em Wilmslow, Cheshire. Um exame post-mortem estabeleceu que a causa da morte foi envenenamento por cianeto. Quando seu corpo foi descoberto, uma maçã estava meio comida ao lado de sua cama, e embora a maçã não tenha sido testada quanto ao cianeto, especula-se que este foi o meio pelo qual uma dose fatal foi ingerida. Um inquérito determinou que ele tinha cometido suicídio, tendo sido então cremado no crematório de Woking em 12 de junho de 1954.

A mãe de Turing argumentou com veemência que a ingestão fora acidental, causada pelo armazenamento descuidado de seu filho de produtos químicos de laboratório. O biógrafo Andrew Hodges sugere que Turing pode ter se matado deliberadamente de forma bastante ambígua para dar à sua mãe alguma negação plausível. Outros sugerem que Turing estava encenando uma cena do filme Branca de Neve, de 1937, seu conto de fadas favorito, salientando que ele tinha "um prazer especialmente mordaz na cena em que a bruxa malvada mergulha a maçã na poção venenosa."

Jack Copeland defende que a morte pode ter sido acidental como resultado de inalação de vapores de cianeto durante uma experiência química conduzida no improvisado laboratório que tinha em casa e onde já anteriormente sofrera acidentes por descuido. O mesmo autor afirma que - contrariamente ao que se tem afirmado - profissionalmente o trabalho lhe corria bem, que andava alegre e que interagia socialmente com normalidade e boa disposição. Constata que na maçã encontrada à cabeceira não foi testada laboratorialmente para determinar a presença de cianeto, que os níveis do veneno no organismo eram uniformes, portanto mais compatíveis com a inalação lenta do que com a ingestão. Conclui, deste modo, que a investigação foi mal conduzida e precipitada e que os elementos disponíveis não indiciam necessariamente que a causa da morte seja suicídio.

Alan Turing

18

Pedidos de Desculpa e Perdão

Por muitos anos foram feitas campanhas que envolveram ativistas da tecnologia da informação, do meio político e do público LGBT. [4] Em 11 de setembro de 2009, 55 anos após sua morte, o primeiro-ministro do Reino Unido, Gordon Brown, seguindo um pedido feito através de uma petição direcionada ao governo britânico, pediu desculpas formais em nome do governo pelo tratamento preconceituoso e desumano dado a Turing, que o levou ao suicídio. Em 24 de Dezembro de 2013, passou a ter efeito a Real Prerrogativa do Perdão, concedida a Turing pela Rainha Elizabeth II a pedido do ministro da justiça do Reino Unido, Chirs Grayling, depois que uma petição criada em 2012 obteve mais de 37.000 assinaturas solicitando o devido perdão. [5][6]

Cinebiografia

Parte de sua vida foi retratada no telefilme Breaking the Code de 1996 com o ator Derek Jacobi no papel principal.

[1] A.M. Turing, "The Chemical Basis of Morphogenesis", Philosophical Transactions of The Royal Society of London, series B, volume 237, pages 3772, 1952. [2] Phil Maguire, "An Irishman's Diary", page 5. The Irish Times, 23 June 2012 [3] The Scientific Tourist In London: #17 Alan Turings Birth Place (http://blogs.nature.com/london/2011/03/16/ the-scientific-tourist-in-london-17-alan-turings-birth-place), Nature.com London Blog [4] http://www.pcpro.co.uk/news/386248/alan-turing-finally-gets-royal-pardon [5] http://www.bbc.co.uk/portuguese/noticias/2013/12/131224_codigo_nazista_condenado_homossexualidade_lgb.shtml [6] http://epetitions.direct.gov.uk/petitions/23526

Bibliografia

Hodges, Andrew. Alan Turing: The Enigma of Intelligence. London: Burnett Books, 1983. ISBN 0-04-510060-8

• Leavitt, David. The Man Who Knew Too Much: Alan Turing and the invention of the computer. [S.l.: s.n.], 2007.

ISBN 978-0-7538-2200-5

• Agar, Jon. In: MIT Press. The government machine: a revolutionary history of the computer (em inglês). Cambridge, Massachusetts: [s.n.], 2003. ISBN 978-0-262-01202-7 Página visitada em 23 de junho de 2012.

• Paul Ceruzzi. A History of Modern Computing (em inglês). MIT Press ed. Cambridge, Massachusetts, e Londres: [s.n.], 1998. ISBN 0-262-53169-0

Ligações externas

Alonzo Church

Alonzo Church

19

Alonzo Church

 
 
 
 

Dados gerais

Nome de nascimento

Alonzo Church

Nacionalidade

Residência

Nascimento

Local

Morte

8 de novembro de 1995 (92 anos)

Local

 

Atividade

Campo(s)

Instituições

Alma mater

Tese

1927: Alternatives to Zermelo's Assumption [1]

Orientador(es)

Orientado(s)

Atuou principalmente nas áreas de gica matemática, teoria da recursão e teoria da computação. Entre suas maiores contribuições, estão o cálculo lambda, um sistema matemático formal que investiga funções, aplicação de funções. Influenciou as linguagens de programação, principalmente as linguagens funcionais, como o LISP (LISP 'puro' pode

Alonzo Church

20

ser chamada de uma linguagem funcional verdadeira).

A Tese de Church-Turing

Partindo em busca do que seria um procedimento efetivo ou mecânico (o que pode ser feito seguindo-se diretamente um algoritmo ou conjunto de regras ), surgiram a sistematização e desenvolvimento das "funções recursivas". O cálculo-lambda (componente característico fundamental da linguagem de programação LISP) de Alonzo Church, tornou pública a possibilidade da definição bem elaborada de processo efetivo.

O teorema de Church n.º1 consiste fundamentalmente na demonstração de que não existe algoritmo capaz de

enumerar as expressões não válidas, de maneira que fica excluído a priori todo procedimento de decisão para as expressões do "Cálculo de predicados".

Church também era interessado no problema da indecibilidade de Hilbert (Entscheidungsproblem). Church tinha alcançado resultados, empregando o conceito de lambda-definibilidade (ao invés do computável por uma máquina de

Turing definido por Turing), mostrando assim que lambda-definibilidade é equivalente ao conceito de recursividade

de Gödel-Herbrand. O cálculo-lambda, como sistema elaborado por Church para ajudar a fundamentar a Matemática

era inconsistente, mas a parte do cálculo-lambda que tratava de funções recursivas estava correta e teve sucesso. Usando sua teoria, Church propôs uma formalização da noção de "efetivamente computável", através do conceito de lambda-definibilidade. Desta forma mostrou que o sistema de procedimentos de Turing eram equivalente à lambda-definibilidade. O trabalho de Church e Turing fundamentalmente liga os computadores com as máquinas de Turing. Os limites das Maquinas de Turing, de acordo com a tese de Church-Turing, também descreve os limites de todos os computadores.

Como foi observado, a máquina de Turing pode ser interpretada como um algoritmo. Efetivamente toda ação de uma máquina algorítmica, como o computador pode ser considerada, se resume a calcular o valor de uma função §2 com determinados argumentos. Este fato é interessante, pois dá uma maneira de se medir a capacidade computacional de uma máquina. Uma máquina que compute mais funções que outra é mais poderosa. A partir dos resultados de Kurt Gödel, Alan Turing e Church, pode-se dizer que existem funções para as quais não existe uma sequência de passos que determinem o seu valor, com base nos seus argumentos. Dizendo-se de outra maneira, "não existem algoritmos para a solução de determinadas funções". São as chamadas "funções não computáveis". Isto significa que para tais funções não há nem haverá capacidade computacional suficiente para resolvê-las. Logo, descobrir as fronteiras entre funções computáveis e não computáveis é equivalente a descobrir os limites do computador em geral. A tese de Church-Turing representa um importante passo nesse sentido. Eles perceberam que o poder computacional das Maquinas de Turing se resumia a qualquer processo algorítmico, ou seja, todas as funções computáveis que pudessem ser descritas por algoritmos. Isto foi a contribuição dada pelo trabalho de Turing e Church. As funções computáveis são as mesmas funções Turing-computáveis. A importância disso está na possibilidade de se verificar o alcance e limites de um computador.

1.

Um célebre teorema de Alonzo Church (1903-1995) demonstrou em 1936 que não pode existir um procedimento geral de decisão para todas as expressões do Cálculo de Predicados de 1a ordem, ainda que exista tal procedimento para classes especiais de expressões de tal cálculo.

22

O processo que determina o valor de uma função através dos argumentos dessa função é chamado de cálculo da função (ou computar uma função).

Alonzo Church

21

Ligações externas

Konrad Zuse

Konrad Zuse

 
 
 

Residência

Residência Alemanha

Nascimento

22

Local

 

Morte

18

de Dezembro de 1995 (85 anos)

Local

 
 

Atividade

Campo(s)

Alma mater

Conhecido(a) por

Z3, Z4, Plankalkül

Prêmio(s)

Konrad Zuse (Berlim, 22 de Junho de 1910 Hünfeld, 18 de Dezembro de 1995) foi um engenheiro alemão e um pioneiro dos computadores. O seu maior feito foi a compleção do primeiro computador de programa controlado por fita guardada, o Z3, com Helmut Schreyer em 1941.

Konrad Zuse inventou o primeiro computador eletromecânico, constituído de relés - efetuava cálculos e exibia os resultados em fita perfurada.

Konrad Zuse

22

No Museu da Tecnologia de Bonn existem alguns de seus inventos, como o Z2, um dos primeiros computadores do mundo. Em outro museu na mesma cidade (Museum für Deutsche Geschichte - Museu da História Alemã) também se encontram outros equipamentos desenvolvidos por Konrad Zuse.

Zuse recebeu em 1964 o Anel Werner von Siemens, pelo Z3. Sua máquina computadora S2 é considerada o primeiro computador controlado por processamento, que foi usado para ajudar a desenvolver os mísseis Henschel Hs 293 e Henschel Hs 294, precursores dos modernos mísseis de cruzeiro.

Ligações externas

• Arquivo Internet Konrad Zuse (http://zuse.zib.de/)

• A vida da obra de Konrad Zuse (http://www.epemag.com/zuse) Por Prof. Horst Zuse (filho de K. Zuse);

• Technical University of Berlin (http://www.tu-berlin.de/)

• Free University of Berlin (http://www.fu-berlin.de/)

• Konrad Zuse, inventor do primeiro computador programável (http://www.idsia.ch/~juergen/zuse.html)

• Tese de física digital e o universo calculável de Zuse (http://www.idsia.ch/~juergen/digitalphysics.html)

1964

Sucedido por

23

Primeiros computadores

Z1

O Z1 era uma unidade aritmética mecânica,

desenvolvida por Konrad Zuse, a partir de 1934 e

destruído durante a Segunda Guerra Mundial. Antes da guerra era denominado V-1 (Versuchs modell-1), Zuse mudou seu nome, após o fim da guerra, para Z1 a fim

de evitar confusões com a denominação dos foguetes

desenvolvidos pelo seu amigo Werner von Braun.

Embora eletro-mecânico, era digital (usava o sistema

de

numeração de base 2). Sua programação era limitada

e

as instruções eram passadas através de cartão

perfurado.

as instruções eram passadas através de cartão perfurado. Esta máquina era constituída basicamente p or um

Esta máquina era constituída basicamente por um

somador/subtrator de 22 bits de vírgula flutuante (ponto-flutuante) e uma unidade lógica de controle que possibilitava a realização de tarefas mais complexas como

multiplicação (por sucessivas somas) e divisão (por sucessivas subtrações). O único componente elétrico do Z1 era

um motor que servia para gerar um sinal de clock mecânico de um hertz. Tinha a maioria dos elementos de arquitetura do modelo Z3, entretanto, por causa de problemas mecânicos não teve utilidade prática.

Este computador eletro-mecânico representa um marco histórico pois é considerado a primeira máquina binária programável do mundo. O Z1 foi o primeiro de uma série de computadores produzido por Konrad Zuse. Os sucessores Z2 e Z3 seguiram as mesmas idéias e princípios presentes no Z1.

O Z1 foi concluído em 1938. Zuse trabalhou no Z1, com conhecidos e amigos na sala de estar do apartamento de

seus pais, em Berlim, o que motivou que estes o proibissem de continuar. Porém, Zuse teve financiamento de muitas

partes nessa época. Assim, o pai, um empregado, retrocedeu da decisão, enquanto destinava o salário da irmã e pedindo a alguns amigos para emprestar dinheiro a Zuse, desde que foi convencido do sucesso desde empreendimento.

Há uma reprodução, feita por Zuse em 1986, deste computador no museu alemão de Tecnologia de Berlim

Z1 exposto em Berlin

Arquitetura (arquitectura)

A arquitetura do Z1 serviu como ponto de partida para a dos seus sucessores. O Z1 dispunha de uma memória para

64 números de vírgula flutuante (ponto-flutuante), de 22 bits de largura (ponto-flutuante de 22 bits de tamanho). A unidade aritmética possuía comandos de adição, subtracção (subtracão), multiplicação, divisão e um decodificador binário-decimal.

O sistema de entrada e saída de dados do Z1 era composto por duas unidades: uma perfuradora de cartões e uma

leitora de cartões perfurados.

Z1

24

Ligações externas

• (em alemão) Informações sobre o Z1 [1]

• (em alemão) [2]

• (em inglês) [3]

Referências

Z2

O Z2 era uma unidade aritmética eletromecânica, desenvolvido por Konrad Zuse, em 1939.

Antes de ter concluído o Z1, que era limitado tecnicamente, por ser eletro-mecânico, Zuse começou a trabalhar num outro computador com relês e válvulas, criando, em Abril de 1939, o Z2, o primeiro computador do mundo.

O Z2 foi concluído em Abril de 1939, quando Zuse o apresentou, em uma demonstração, para a Deutsche

Versuchsanstalt fur Luftfahrt (Instituto de Investigação da Força Aérea Alemã) o qual teve interesse em financiar o desenvolvimento de um computador mais potente.

Há uma reprodução, feita por Zuse em 1986, deste computador no museu alemão de Tecnologia de Berlim.

Arquitetura (arquitectura)

(Em construção)

Z3

Z3

25

O computador Z3 foi a primeira máquina de computação totalmente

automática e programável do mundo, criado em 1941 pelo alemão Konrad Zuse. Foi utilizado pelo Instituto de pesquisa aeronáutica alemão a fim de realizar análises estatísticas em projetos de asas de novas aeronaves.

Sua construção se deu durante a segunda guerra mundial e tinha como objetivo a codificação de mensagens, por uma equipe de 15 pessoas em um anexo da fábrica de aviões Henschel. Tinha uma memória que armazenava 64 números de 22 bits. Seus cálculos eram realizados em aritmética binária de ponto flutuante e já calculava raízes quadradas e

realizava uma multiplicação em cerca de 5 segundos. Foi a primeira máquina de calcular com controle automático de operações. Foi destruído, junto com a casa de Zuse, em Berlim, por um bombardeio.

junto com a casa de Zuse, em Berlim , por um bombardeio. Réplica do Z3 em

Réplica do Z3 em exposição no Deutsches Museum em Munique.

Ligações externas

Z4

O Z4 foi um computador-projeto por Konrad Zuse, baseado nos

anteriores Z3 e Z2.

Antecedentes

Em 1940, Konrad Zuse teve a idéia de usar computadores para libertar

os espíritos dos seres humanos da tarefa de cálculos. Para construir o seus computadores, Konrad Zuse fundou uma companhia chamada de Zuse Apparatebau em Berlim no dia 1 de abril de 1940.

de Zuse Apparatebau em Berlim no dia 1 de abril de 1940. Z4 O computador Z4

Z4

O computador Z4

A Zuse Apparatebau era uma pequena empresa localizada no Methfesselstraße 7 e 10, em Berlim-Kreuzberg. Em

1941, Konrad Zuse tinha certeza de que os problemas gerais de construção de computadores poderosos foram resolvidos. Ele projetou o Z4 para ser um protótipo de computadores para escritórios de engenharia e institutos científicos. Com base em suas experiências com as máquinas Z1 a Z3 , e sabendo o que ele queria para solucionar problemas para os engenheiros, ele percebeu que o Z4 necessitava de muito mais memória do que as máquinas anteriores.

Por este motivo, ele comparou as vantagens e desvantagens de uma memória construída utilizando relés de uma memória construída a partir de folhas de metal fino (como o Z1 e Z2). Sua conclusão foi de que a construção da memória a partir de folhas de metal era muito menos dispendioso do que construir uma memória de relés . Ficou

Z4

26

claro para ele que uma memória de 32-bit mil palavras consistindo de relés seria muito grande, porque ele iria precisar de mais de 1000 x 32 = 32000 relés. Sua memória mecânica patenteada (1936) funcionou de forma muito confiável, e para as 1000 palavras ele não iria precisar de mais de um metro cúbico de espaço. Konrad Zuse também estimou os custos de uma palavra de 32-bit da memória mecânica como sendo de 5 RM (Reichmarks), o que correspondeu a aproximadamente 2,50 dólares em 1942.

A meta para o Z4, que foi desenvolvido entre 1942 e 1945, foi a construção do protótipo de uma máquina que estava destinada a ser produzida na casa das centenas.

Em 1945 a Zuse Apparatebau tinha cerca de 20 funcionários. Nesta época o edifício e a empresa foram completamente destruídos pelos ataques aéreos. Nesse ano, a região do terreno no Methfesselstraße 7 foi bombardeado. Os Z3 e Z4 foram construídos em uma casa sobre esta parcela de terreno.

Demorou mais de quatro anos para construir o Z4, que acabou por ser muito menor do que o inicialmente previsto. No entanto, a falta de materiais, os quase diários ataques aéreos, bem como a crescente dificuldade de se viver em Berlim tornaram impossível terminar o Z4.

Fonte

O Colossus

Colossus foi um computador inglês projetado em Bletchley Park durante a Segunda Guerra Mundial pela equipe liderada por Tommy Flowers. Seu principal objetivo era fazer a criptoanálise de códigos ultra-secretos utilizados pelos nazistas, criados com a máquina. Lorenz SZ 40/42. Utilizando símbolos perfurados em fitas de papel, o equipamento processava a uma velocidade de 25 mil caracteres por segundo.

a uma velocidade de 25 mil caracteres por segundo. Colossus Mark 2 sendo operado Ligações externas

Colossus Mark 2 sendo operado

Ligações externas

• Mark Ward (11 de fevereiro de 2013). The road to uncovering a wartime Colossus [1] . BBC News.

The Colossus Gallery [2] . The National Museum of Computing.

Referências

Harvard Mark I

Harvard Mark I

27

O ASCC (Automatic Sequence Controlled Calculator),

chamado de Mark I pela Universidade de Harvard [1] , foi o primeiro computador eletromecânico automático de larga escala desenvolvido nos Estados Unidos da América. [2] Ele foi construído em 1944 num projeto da Universidade de Harvard em conjunto com a IBM.

[1] O nome impresso no computador é Aiken-IBM Automatic Sequence Controlled Calculator Mark I. [2] IBM Archives (http://www-03.ibm.com/ibm/history/

ENIAC

reference/faq_0000000011.html) ENIAC Parte do Mark I Electronic Numerical Integrator Analyzer

Parte do Mark I

Electronic Numerical Integrator Analyzer and Computer (ENIAC

- em português: computador integrador numérico electrónico) foi o

primeiro computador digital eletrônico de grande escala. Muitos falam que o primeiro foi o Mark I, mas este era apenas eletromecânico. Foi criado em fevereiro de 1946 pelos cientistas norte-americanos John Eckert e John Mauchly, da Electronic Control Company

O ENIAC começou a ser desenvolvido em 1943 durante a II Guerra

Mundial para computar trajetórias táticas que exigissem conhecimento substancial em matemática, mas só se tornou operacional após o final da guerra.

mas só se tornou operacional após o final da guerra. Duas mulheres operando o ENIAC (

Duas mulheres operando o ENIAC (fotografia pertencente ao Exército dos Estados Unidos (U.S. Army)).

••

Sua capacidade de processamento era de 5.000 operações por segundo;

Criado na segunda guerra, tinha como principal finalidade cálculos balísticos;

Possuía 17.468 válvulas termiônicas, de 160 kW de potência;

Esta máquina não tinha sistema operacional e seu funcionamento era parecido com uma calculadora simples de hoje.

O ENIAC, assim como uma calculadora, tinha de ser operado manualmente.

A calculadora efetua os cálculos a partir das teclas pressionadas, fazendo interação direta com o hardware, como no

ENIAC, no qual era preciso conectar fios, relês e sequências de chaves para que se determinasse a tarefa a ser executada. A cada tarefa diferente o processo deveria ser refeito. A resposta era dada por uma sequência de lâmpadas.

ENIAC

28

Produção

Era tão grande que tinha de ser disposto em U com três painéis sobre rodas, para que os operadores pudessem se mover em torno dele. Foram gastos cerca de $500.000,00 (quinhentos mil) em sua construção. Quando em operação, outros complexos cálculos de balística passaram a realizarse em alucinantes 30 segundos, quando com as calculadoras manuais que até aí se usavam levava 12 horas para se obter o mesmo resultado. O centro de processamento tinha uma estrutura muito similar à dos processadores mais básicos que atualmente utilizamos em nossas calculadoras de bolso. Tinha 20 registos de dez dígitos cada, onde se podiam efetuar somas, subtrações, multiplicações, divisões e raízes quadradas.

As programadoras do ENIAC

O ENIAC era programado através de milhares de interruptores, podendo cada um dele assumir o valor 1 ou 0

consoante o interruptor estava ligado ou desligado. Para o programar era necessário uma grande quantidade de pessoas que percorriam as longas filas de interruptores dando ao ENIAC as instruções necessárias para computar, ou seja, calcular. Existia uma equipe de 80 mulheres na Universidade da Pensilvânia cuja função era calcular manualmente as equações diferenciais necessárias para os cálculos de balística. O exército chamava a função destas pessoas: computadores.

Quando o ENIAC ficou pronto, seis mulheres foram escolhidas para testarem a nova máquina.

Versão modernizada do ENIAC

Curiosamente, o termo deixou de estar associado as pessoas que operavam a máquina para dar nome a máquina propriamente dita, uma vez que de facto a máquina passou a realizar as contas que antes eram realizadas por essas pessoas.

O ENIAC torna-se obsoleto e economicamente inviável de manter após 10 anos de operação, tendo sido

desmontado. Hoje encontram-se peças do ENIAC por muitos museus do mundo, incluindo o Smithsonian em Washington D.C. e no local preciso onde foi construído, na Moore School for Electrical Engineering da Universidade da Pensilvânia.

Desenvolvimento posterior

O ENIAC serviu de inspiração para muitos outros computadores que se seguiram, como o EDVAC (Electronic

Discrete Variable Computer); o ORDVAC (Ordnance Variable Automatic C