Professional Documents
Culture Documents
transcription_translation
transcription_translation
Translated Text:
A seguir está uma conversa com Bjorn Stralstrup. Ele é o criador do C++. Linguagem
de programação que depois de 40 anos ainda é uma das linguagens mais populares e
poderosas do mundo. É focado em código rápido, estável e robusto, subjacente a
muitos dos maiores sistemas do mundo nos quais confiamos como sociedade. Se você
estiver assistindo isso no YouTube, por exemplo, muitos dos componentes críticos de
backhand do YouTube são escritos em C++. St. Ghost para Google, Facebook, Amazon,
Twitter, a maioria dos aplicativos Microsoft, aplicativos Adobe, a maioria dos
sistemas de banco de dados e a maioria dos sistemas físicos que operam no mundo
real, como carros, robôs, foguetes que nos lançam ao espaço, e um dia nós nos
levará a Marte. C++ também é a linguagem que usei mais do que qualquer outra em
minha vida. Escrevi centenas de milhares de linhas de código-fonte C++. É claro que
as linhas de código-fonte não significam muito, mas dão dicas da minha jornada
pessoal pelo mundo do software. Gostei de observar o desenvolvimento do C++ como
linguagem de programação, levando à grande atualização do padrão em 2011, e às que
se seguiram em 14, 17 e em direção ao novo padrão C++ 20, que esperançosamente será
lançado no próximo ano. Este é o Podcast de Inteligência Artificial. Se você
gostou, inscreva-se no YouTube, dê cinco estrelas e iTunes, apoie no Patreon, ou
simplesmente conecte-se comigo no Twitter, no Lex Friedman's, sobre o FRID MAM. E
agora aqui está minha conversa com Bjorn Straustrup. Qual foi o primeiro programa
que você escreveu? Você se lembra? Foi meu segundo ano na universidade, primeiro
ano de ciência da computação, e foi em L.C. 60. Calculei o formato de um superlábio
e depois conectei pontos no perímetro, criando padrões de estrelas. Foi com um
casamento em uma impressora de papel. E isso foi na faculdade. Universidade. Yeah,
yeah. Aprendi a programar no segundo ano da universidade. Qual foi a primeira
linguagem de programação, se assim posso perguntar, pela qual você se apaixonou?
Acho que vou ligar para 60. E depois disso, lembro que me lembro do Snowball.
Lembro-me do Fortran, não me apaixonei por isso. Lembro-me do Pascal, não me
apaixonei por isso. Tudo o que nos atrapalhou. E então eu cobri um assunto mais
simples e que foi muito mais divertido. E a partir daí fui para minha equipe. Meu
código de tripulação. Então você se sentiu atraído e achou as coisas de baixo nível
lindas. Passei por muitas linguagens e depois passei um tempo significativo em um
código mais simples e micro que foi a primeira coisa realmente lucrativa e paguei
pelos meus mestres, na verdade. E então descobri Simula, o que foi absolutamente
fantástico. Simula. Simula foi a extensão de L.C. 60. Feito principalmente para
simulação, mas basicamente eles inventaram o upgitory para programação em herança e
polimorfismo em tempo de execução quando estavam, enquanto faziam isso. E essa foi
uma linguagem que me ensinou que você poderia fazer com que os problemas de um
programa crescessem com o tamanho do programa, e não com o quadrado do tamanho do
programa. Ou seja, você pode modularizar muito bem. E isso, isso, isso foi uma
surpresa para mim. Também foi uma surpresa para mim que um sistema de tipos mais
rígido que o de Pascal fosse útil, enquanto o sistema de tipos de Pascal funcionava
do meu jeito o tempo todo. Portanto, você precisa de um sistema de tipos forte para
organizar bem seu código, mas deve ser extensível e flexível. Vamos entrar um pouco
nos detalhes. Que tipo, se você se lembra, que tipo de sistema de digitação Pascal
tinha, que tipo de sistema de digitação o álcool 60 tinha? Basicamente, Pascal era
a linguagem mais simples que Nick Lossweat poderia definir e que atendia às
necessidades de Nick Lossweat na época. E tem um tom altamente moral. Ou seja, se
você consegue falar em Pascal, está bom. E se você não pode, não é tão bom.
Considerando que, da mesma forma, um grande é basicamente construir seu próprio
sistema de tipos. Então, em vez de tentar se encaixar no mundo de Nick Lossweat, a
linguagem de Christian Newgoer, e tudo que você entende é linguagem, permite que
você construa a sua própria. Então é mais ou menos próximo da sua ideia original,
você constrói uma linguagem específica de domínio. Na verdade, o que você constrói
é um conjunto de tipos e relações entre tipos que permite expressar algo que seja
adequado para uma aplicação. Então, quando você diz tipos, o que você está dizendo
tem ecos de programação orientada a objetos. Sim, eles inventaram isso. Toda
linguagem que usa a palavra classe para tipo é uma descendente de Simula.
Diretamente ou indiretamente. Christian Newgoer e Oliohandal eram matemáticos. E
eles não pensavam em termos de tipos, mas entendiam conjuntos e classes de
elementos. E então eles chamaram seus tipos de classes. E basicamente, em C++, LC
em Simula, classes são usadas para encontrar tipos. Então, você pode tentar a
tarefa impossível e contar uma breve história das linguagens de programação da sua
perspectiva? Então começamos com o Algoer 60 Simula Pascal, mas isso é apenas dos
anos 60 e 70. Eu posso tentar. A melhoria mais interessante e importante das
linguagens de programação foi o primeiro quatro trens. Porque antes todo código era
escrito para uma máquina específica e cada máquina específica tinha uma linguagem,
uma linguagem simples ou uma simples ou alguma extensão dessa ideia. Mas você
estava escrevendo para uma máquina específica na linguagem dessa máquina. E Barca e
sua equipe na IBM construíram uma linguagem que permitiria escrever o que você
realmente queria. Ou seja, você poderia escrever em uma linguagem que fosse natural
para as pessoas. Acontece que essas pessoas eram engenheiros e físicos, então a
linguagem que surgiu era um tanto incomum para o resto do mundo. Mas basicamente,
eles disseram tradução de fórmulas porque queriam que as fórmulas matemáticas
fossem traduzidas para a máquina. E como efeito colateral, eles obtiveram
portabilidade porque agora estão escrevendo nos termos que os humanos usavam e da
maneira como os humanos pensavam. E então eles tiveram um programa que traduziu
isso para as necessidades da máquina. E isso era novo e foi ótimo. E é algo para
lembrar. Queremos elevar a linguagem ao nível humano, mas não queremos perder a
eficiência. E esse foi o primeiro passo em direção ao humano. Esse foi o primeiro
passo. E, claro, havia tipos muito particulares de humanos, empresários, métodos de
diferença, então eles tinham um estado co-carregado e etc. etc. E surgiram coisas
semelhantes, não, não vamos simular ainda. Vamos para Elgol. O Fortran não tinha na
época as noções de nem uma noção precisa de tipo, nem uma noção precisa de escopo,
nem um conjunto de fases de tradução que é o que temos hoje, sintaxe lexical,
semântica. Era meio que um modelo no início, mas ei, eles estão apenas no grande
avanço na história da programação, certo? Então não dá para criticá-los por não
terem conseguido todos os detalhes técnicos, certo? Então pegamos Elgol. Isso foi
muito bonito. E a maioria das pessoas em comunicações e organizações consideravam-
no inútil porque não era suficientemente flexível e não era suficientemente
eficiente e etc. etc. Mas isso foi um avanço do ponto de vista técnico. Então
surgiu algo semelhante para tornar essa ideia mais flexível e você poderia definir
seus próprios tipos. Fiquei muito interessado. Christian Nugor, que é o principal
idealizador do Simula. Isso foi no final dos anos 60. Isso foi no final dos anos
60. Bem, o que é um professor visitante em Osh? E então aprendi programação
orientada a objetos sentando e discutindo bem em teoria com