Grace Hopper Facts


Com a mais longa carreira militar ativa, o Contra-Almirante Grace Hopper (1906-1992) também era conhecido como “Amazing Grace” e “Grand Old Lady of Software”. Ela desempenhou um papel instrumental no desenvolvimento da linguagem de programação de computadores COBOL.<

Grace Hopper, que subiu nas fileiras da Marinha para se tornar um contra-almirante aos 82 anos de idade, é mais conhecida por sua contribuição para o projeto e desenvolvimento da linguagem de programação COBOL para aplicações comerciais. Sua vida profissional abrangeu o crescimento da moderna ciência da computação, desde seu trabalho como jovem tenente da Marinha programando uma máquina de cálculo precoce até sua criação de software sofisticado para microcomputadores. Ela foi uma força influente e uma figura lendária no desenvolvimento de linguagens de programação. Em 1991, o Presidente George Bush a presenteou com a Medalha Nacional de Tecnologia “por suas conquistas pioneiras” no campo de processamento de dados.

Admiral Hopper nasceu Grace Brewster Murray em 9 de dezembro de 1906, na cidade de Nova York. Ela foi a primeira filha de Marry Campbell Van Horne Murray e Walter Fletcher Murray. Encorajada por seus pais a desenvolver suas habilidades mecânicas naturais, ela desmontou e examinou engenhocas em casa, e se destacou em matemática na escola. Seu avô tinha sido um engenheiro civil sênior da cidade de Nova York que inspirou seu forte interesse em geometria e matemática.

Na Faculdade de Vassar, Hopper se entregou aos seus interesses matemáticos, e também fez cursos de física e engenharia. Ela se formou em 1928, depois freqüentou Yale, onde recebeu um mestrado em 1930 e um doutorado em 1934. Estas foram realizações raras, especialmente para uma mulher. Como Robert Slater aponta em Portraits in Silicon, doutoramentos nos EUA em matemática numerados apenas 1, 279 entre 1862 e 1934. Apesar das perspectivas sombrias para as mulheres matemáticas no ensino além do nível do ensino médio, o Vassar College a contratou primeiro como instrutora, depois como professora de matemática. Hopper lecionou em Vassar até o início da Segunda Guerra Mundial. Ela viveu com seu marido, Vincent Foster Hopper, com quem se casou em 1930. Eles estavam divorciados em 1945 e não tinham filhos.

Em 1943, Hopper ingressou na Reserva Naval dos EUA, freqüentando a escola de aspirantes e obtendo uma comissão como tenente em 1944. Ela foi imediatamente designada para o Bureau of Ships Computation Project em Harvard. O

projeto, dirigido por Howard Aiken, foi sua primeira introdução à tarefa de Aiken, que era conceber uma máquina que ajudasse a Marinha a fazer cálculos rápidos e difíceis para projetos como a colocação de um campo de minas. Em outras palavras, Aiken estava no processo de construção e programação do primeiro computador digital programável da América— o Mark I.

Para Hopper, a experiência foi ao mesmo tempo desconcertante e instrutiva. Sem qualquer formação em computação, ela recebeu um livro de código e foi convidada a iniciar os cálculos. Com a ajuda de dois alferes designados para o projeto e um súbito mergulho nos trabalhos do pioneiro da computação Charles Babbage, Hopper iniciou um curso intensivo sobre o estado atual do cálculo por meio do que Aiken chamou de “um motor de computação”

O Mark I foi o primeiro computador digital a ser programado sequencialmente. Assim, Hopper experimentou em primeira mão as complexidades e frustrações que sempre foram a marca registrada do campo da programação. O código exato da linguagem da máquina poderia ser facilmente mal lido ou incorretamente escrito. Para reduzir o número de erros de programação, Hopper e seus colegas coletaram programas que estavam livres de erros e geraram um catálogo de sub-rotinas que poderiam ser usadas para desenvolver novos programas. Nessa época, o Mark II já havia sido construído. A equipe do Aiken utilizava os dois computadores lado a lado, conseguindo efetivamente uma primeira instância de multiprocessamento.

No final da guerra, Hopper tinha se apaixonado pela vida na Marinha, mas sua idade —um mero quarenta anos—impediu uma transferência da WAVES para a Marinha regular. Ela permaneceu nas Reservas da Marinha e permaneceu no Laboratório Computacional de Harvard como pesquisadora, onde continuou seu trabalho na série de computadores Mark. O problema dos erros de computador continuou a atormentar a equipe do Mark. Um dia, percebendo que o computador havia falhado, Hopper e seus colegas descobriram uma traça em um relé defeituoso. O inseto foi removido e corrigido na página de um diário de bordo como o “primeiro erro realmente encontrado”. As palavras “bug” e “debugging”, termos agora familiares no vocabulário do computador, são atribuídas a Hopper. Em 1949, ela deixou Harvard para assumir o cargo de matemático sênior em uma empresa iniciante, a Eckert-Mauchly Computer Corporation. Iniciada em 1946 por J. Presper Eckert e John Mauchly, a empresa tinha desenvolvido em 1949 o Binary Automatic Computer, ou BINAC, e estava em processo de introdução do primeiro Computador Automático Universal, ou UNIVAC. O Eckert-Mauchly UNIVAC, que registrou informações em fita magnética de alta velocidade em vez de em cartões perfurados, foi um sucesso imediato. A empresa foi mais tarde comprada pela Sperry Corporation. Hopper permaneceu na organização e em 1952 tornou-se o engenheiro de sistemas e diretor de programação automática da Divisão Sperry da UNIVAC, cargo que ocupou até 1964.

A associação da Hopper com a UNIVAC resultou em vários avanços importantes no campo da programação. Ainda ciente dos problemas constantes causados por erros de programação, Hopper desenvolveu um programa inovador que traduziria a linguagem do programador em linguagem de máquina. Este primeiro compilador, chamado “A-O”, permitiu ao programador escrever em uma linguagem simbólica de nível superior, sem ter que se preocupar com a tediosa linguagem binária de números infinitos que eram necessários para se comunicar com a própria máquina.

Um dos desafios que Hopper teve que enfrentar em seu trabalho no compilador foi o de como conseguir “saltos para frente” em um programa que ainda não tinha sido escrito. Em Grace Hopper, Almirante da Marinha e Computador Pioneiro, Charlene Billings explica que Hopper usou uma estratégia de seus schooldays— o passe para frente no basquetebol. Proibido sob as regras para o basquetebol feminino de driblar mais de uma vez, uma companheira de equipe passava rotineiramente a bola pela quadra abaixo para outra, depois corria pela própria quadra abaixo e ficava em posição de receber a bola e fazer a cesta. Hopper definiu o que ela chamou de “canto neutro” como um pequeno segmento no final da memória do computador que lhe permitia um espaço seguro para “pular para frente” de uma determinada rotina, e sinalizar a operação com uma mensagem. Como cada rotina era executada, ela procurava por mensagens e pulava para frente e para trás, essencialmente correndo em uma única passagem.

No início dos anos 50, Hopper começou a escrever artigos e a entregar artigos sobre suas inovações de programação. Sua primeira publicação, “A Manual of Operation for the Automatic Sequence Controlled Calculator”, detalhou seu trabalho inicial sobre Mark I. “The Education of a Computer”, oferecido em 1952 em uma conferência da Associação de Máquinas de Computação, esboçou muitas idéias sobre software. Um artigo publicado em uma edição de 1953 de Computadores e Automação, “Rotinas de Compilação”, expôs os princípios de compilação. Além de numerosos artigos e artigos, Hopper publicou um livro sobre

computação intitulada Understanding Computers, com Steven Mandrell.

A economia demonstrou que os computadores são programáveis e capazes não só de fazer aritmética, mas também de manipular os símbolos, Hopper trabalhou de forma constante para melhorar o projeto e a eficácia das linguagens de programação. Em 1957, ela e sua equipe na UNIVAC criaram o Flow-matic, o primeiro programa que usava palavras em inglês. Flow-matic foi posteriormente incorporado ao COBOL, e, de acordo com Jean E. Sammet, constituiu a contribuição mais direta e vital de Hopper ao COBOL.

A história do desenvolvimento do COBOL ilustrou a ampla influência de Hopper no campo da programação. A IBM tinha desenvolvido FORTRAN, a linguagem de programação densamente matemática mais adequada aos cientistas. Mas não existia uma linguagem comparável para os negócios, apesar das claras vantagens que os computadores ofereciam na área de processamento de informações.

Em 1959, era óbvio que uma linguagem de programação padrão era necessária para a comunidade empresarial. Flow-matic era um protótipo óbvio para uma linguagem de programação empresarial. Naquela época, porém, a IBM e a Honeywell estavam desenvolvendo seus próprios programas concorrentes. Sem esforço cooperativo, a possibilidade de uma linguagem padrão ser usada em todo o mundo dos negócios era pequena. Hopper, que fez campanha pela padronização de computadores e programação ao longo de sua vida, argumentando que a falta de padronização criou uma grande ineficiência e desperdício, foi perturbada por esta perspectiva.

O problema era como conseguir uma linguagem comercial comum sem infringir as leis antitruste. Em abril de 1959, um pequeno grupo de acadêmicos e representantes da indústria de computadores, entre eles Hopper, reuniu-se para discutir uma linguagem de programação padrão especificamente adaptada para a comunidade empresarial. Eles propuseram entrar em contato com o Departamento de Defesa, que contratou fortemente com a indústria de negócios, para coordenar um plano, e em maio um grupo maior reuniu-se com Charles Phillips. O resultado foi a formação de vários comitês encarregados de supervisionar o projeto e desenvolvimento da linguagem que acabaria sendo conhecida como COBOL— um acrônimo para “Common Business Oriented Language”. Hopper serviu como assessor técnico do Comitê Executivo.

Os aspectos únicos e de longo alcance do COBOL incluíram sua legibilidade e sua portabilidade. Enquanto o FORTRAN da IBM usava um código matemático altamente condensado, o COBOL usava palavras comuns em inglês. COBOL foi escrito para uso em computadores diferentes e pretendeu ser independente de qualquer empresa de computadores. Hopper defendeu o uso de COBOL em seu próprio trabalho na Sperry, trazendo à fruição um compilador COBOL concomitantemente com o RCA no que foi apelidado de “Computer Translating Race”. Ambas as empresas demonstraram com sucesso seus compiladores no final de 1960.

Hopper foi eleito membro do Institute of Electrical and Electronics Engineers (IEEE) em 1962 e da American Association for the Advancement of Science (AAAS) em 1963. Ela recebeu o prêmio Society of Women Engineers Achievement Award em 1964. Ela continuou seu trabalho com a Sperry, e em 1964 foi nomeada cientista de programação de sistemas, na Divisão UNIVAC.

Em Sperry, Hopper permaneceu ativo nas Reservas da Marinha, aposentando-se com grande relutância em 1966. Mas apenas sete meses depois, ela foi convidada a dirigir a padronização de idiomas de alto nível na Marinha. Ela voltou ao serviço ativo em 1967 e foi dispensada da aposentadoria obrigatória aos sessenta e dois anos de idade. Ela serviu na Marinha até a idade de setenta e um anos.

Embora ela tenha continuado a trabalhar na Sperry Corporation até 1971, suas atividades com a Marinha lhe trouxeram um reconhecimento crescente como porta-voz da utilidade dos computadores. Em 1969, ela foi nomeada “Homem do Ano” pela Associação de Gerenciamento de Processamento de Dados. Nas duas décadas seguintes, ela receberia inúmeros prêmios e títulos honoríficos, incluindo a eleição como membro da Associação de Programadores e Analistas de Computadores (1972), a eleição para membro da Academia Nacional de Engenharia (1973), a eleição como membro ilustre da Sociedade Britânica de Computação (1973), a Medalha de Serviço de Mérito da Marinha (1980), a indução no Salão da Fama da Engenharia e Ciência (1984) e a Medalha de Serviço de Distinção da Marinha (1986). Ela deu amplas palestras e assumiu interesses particulares na indústria de computadores, pressionando por uma maior padronização e compatibilidade em programação e hardware.

Os anos da Marinha de Guerra trouxeram promoções constantes. Ela se tornou capitã na lista de aposentados da Reserva Naval em 1973 e comodoro em 1983. Em 1985, ela ganhou o posto de almirante de retaguarda antes de se aposentar em 1986. Mas sua vida profissional não terminou aí. Ela se tornou consultora sênior da Digital Equipment Corporation imediatamente após deixar a Marinha e trabalhou lá até sua morte, em 1 de janeiro de 1992. Em seu obituário, o jornal New York Times observou que “[l]ike another Navy figure, Admiral Rickover, Admiral Hopper was known for her combative personality and her unorthodox approach”. Ao contrário de muitos de seus colegas nos primeiros tempos dos computadores, Hopper acreditava em tornar computadores e linguagens de programação cada vez mais disponíveis e acessíveis a não-especialistas.

Leitura adicional sobre Grace Hopper

Billings, Charlene W., Grace Hopper, Navy Admiral and Computer Pioneer, Enslow, 1989.

Slater, Robert, Portraits in Silicon, MIT Press, 1987.

New York Times, 3 de janeiro de 1992.

Sammet, Jean E., “Farewell to Grace Hopper—End of an Era!, ” in Communications of the AMC, April, 1992.


GOSTOU? PARTILHE COM OS SEUS AMIGOS!