Dossiê · Linguagens de programação
Barbara Liskov: a cientista do CLU, da abstração de dados e do princípio de substituição
Em março de 1968, Barbara Liskov se tornou uma das primeiras mulheres a concluir um doutorado em ciência da computação nos Estados Unidos, com um programa de finais de xadrez. No MIT, criou nos anos 1970 a linguagem CLU, construída em torno da abstração de dados, e depois definiu com Jeannette Wing a noção de subtipo hoje chamada de princípio de substituição de Liskov.
Atualizado em · 1 fontes públicas citadas
Barbara Liskov é uma cientista da computação americana, professora do MIT, onde lidera o Programming Methodology Group [1].
Ela liderou o projeto das linguagens CLU e Argus e desenvolveu com Jeannette Wing uma definição de subtipo hoje conhecida como princípio de substituição de Liskov [1]. Recebeu o Prêmio Turing de 2008 [1].
Berkeley e a porta fechada de Princeton
Barbara Jane Huberman nasceu em 7 de novembro de 1939, em Los Angeles, a mais velha de quatro filhos [1].
Formou-se em matemática, com menor em física, na Universidade da Califórnia em Berkeley, em 1961; segundo a Wikipédia, tinha só mais uma colega mulher no curso [1]. Na época, Princeton não aceitava mulheres em matemática [1].
Mudou-se para Boston, trabalhou por cerca de um ano na MITRE Corporation e depois num emprego de programação em Harvard, com tradução de línguas [1].
Stanford, McCarthy e o xadrez
Em Stanford, Liskov trabalhou com John McCarthy, seu orientador [1]. Em março de 1968 tornou-se uma das primeiras mulheres a concluir um doutorado em ciência da computação nos EUA [1].
A tese tratava de um programa para jogar finais de xadrez, e nela Liskov desenvolveu a importante heurística killer, segundo a Wikipédia [1].
Barbara Liskov: idade em cada marco
Idade aproximada em cada marco, calculada a partir da data de nascimento (7 de novembro de 1939) e dos anos citados na Wikipédia.
Como ela faz aniversário em 7 de novembro, considera-se que os eventos ocorreram antes dessa data.
MITRE e o sistema Venus
Depois do doutorado, voltou à MITRE como pesquisadora, onde construiu o Venus, um sistema de tempo compartilhado pequeno e de baixo custo [1].
CLU, Argus e Thor no MIT
No MIT, Liskov liderou nos anos 1970 o projeto da linguagem CLU, construída em torno da abstração de dados [1]. Em 1974 publicou com Stephen Zilles o artigo “Programming with abstract data types” e, em 1977, “Abstraction mechanisms in CLU”, na Communications of the ACM [1].
Nos anos 1980 criou o Argus, que a Wikipédia descreve como a primeira linguagem de alto nível a permitir implementar programas distribuídos [1]. Também liderou o Thor, um sistema de banco de dados orientado a objetos [1].
Segundo o artigo, CLU e Argus influenciaram linguagens posteriores como Java, C++, C# e Ada [1].
O princípio de substituição de Liskov
Com Jeannette Wing, Liskov desenvolveu uma definição específica de subtipo, hoje conhecida como princípio de substituição de Liskov [1]. O artigo formal, “A behavioral notion of subtyping”, é de 1994 [1].
Ela também escreveu com John Guttag o livro Abstraction and Specification in Program Development (1986) e, em 2000, Program Development in Java [1].
Tolerância a falhas bizantinas
A pesquisa atual de Liskov trata de tolerância a falhas bizantinas e computação distribuída [1]. Em 1999 publicou com Miguel Castro o artigo “Practical Byzantine fault tolerance” [1].
Em 1992 já tinha publicado “Providing high availability using lazy replication”, e em 2000 “Protecting privacy using the decentralized label model” [1]. Em fevereiro de 2023, tinha escrito cinco livros e mais de 100 artigos técnicos [1].
O Prêmio Turing e outras honrarias
Em março de 2009, Liskov recebeu da ACM o Prêmio Turing de 2008, “pelo trabalho no projeto de linguagens de programação e metodologia de software, especialmente ligado a abstração de dados, tolerância a falhas e computação distribuída” (tradução livre) [1]. Foi a segunda mulher a recebê-lo [1].
Em 2002, a revista Discover a incluiu entre as 50 mulheres mais importantes da ciência [1]. Recebeu a Medalha John von Neumann do IEEE em 2004 e, em 19 de novembro de 2005, um doutorado honorário da ETH, junto com Donald Knuth [1].
Vieram depois doutorados honorários das universidades de Lugano (2011) e Politécnica de Madri (2018), a entrada no National Inventors Hall of Fame (2012), o Computer Pioneer Award (2018) e a Medalha Benjamin Franklin (2023) [1]. É membro das academias nacionais de Engenharia e de Ciências dos EUA e da Academia Americana de Artes e Ciências [1].
Linha do tempo
-
1939
Nasce em Los Angeles
-
1961
Bacharelado em matemática em Berkeley
-
1968
Doutorado em Stanford, orientado por John McCarthy
-
1974
“Programming with abstract data types”, com Stephen Zilles
-
1977
“Abstraction mechanisms in CLU”
-
1981
Manual de referência do CLU
-
1986
Livro com John Guttag sobre abstração e especificação
-
1994
“A behavioral notion of subtyping”, com Jeannette Wing
-
1999
“Practical Byzantine fault tolerance”, com Miguel Castro
-
2004
Medalha John von Neumann
-
2009
Recebe o Prêmio Turing de 2008
-
2012
National Inventors Hall of Fame
-
2023
Medalha Benjamin Franklin
Empresas ligadas a Barbara Liskov
Empresas desta coleção em que a pessoa trabalhou, fundou, investiu ou com que teve relação direta. Os nomes com link já têm dossiê publicado.
Ver a rede de Barbara Liskov no grafo 3D
Veja também: outras pessoas
- John McCarthy Orientador do doutorado de Liskov em Stanford
- Donald Knuth Recebeu com Liskov o doutorado honorário da ETH em 2005
Sumário de siglas usadas
- CLU
- Linguagem de programação criada no MIT nos anos 1970, construída em torno da abstração de dados.
- Abstração de dados
- Ideia de esconder a representação interna de um tipo e expor só as operações sobre ele.
- LSP
- Liskov Substitution Principle: um subtipo deve poder substituir seu tipo-base sem quebrar o programa.
- Falha bizantina
- Falha em que um componente de um sistema distribuído se comporta de forma arbitrária ou maliciosa.
- MITRE
- Organização americana sem fins lucrativos de pesquisa e engenharia.
Perguntas frequentes
Quem é Barbara Liskov?+
O que é o princípio de substituição de Liskov?+
Barbara Liskov foi a primeira mulher doutora em computação?+
Por que Barbara Liskov ganhou o Prêmio Turing?+
O que é a tolerância prática a falhas bizantinas?+
Referências
Livros
Abstraction and Specification in Program Development
Com John Guttag, 1986.
Program Development in Java
2000.
CLU: Reference Manual
1981.
Fontes consultadas
- Barbara Liskov · Wikipédia
Este dossiê usa apenas informações públicas e com fonte. Não publicamos dados pessoais privados, como endereço, documentos ou informações de saúde. Encontrou um erro? Escreva para [email protected].
Conclusão
Barbara Liskov começou numa época em que Princeton não aceitava mulheres em matemática e se tornou uma das primeiras doutoras em computação dos EUA. Do CLU à tolerância a falhas bizantinas, seu trabalho em abstração de dados, tolerância a falhas e computação distribuída foi premiado pela ACM com o Prêmio Turing.