As quatro linguagens mães: Fortran
Como mencionamos anteriormente, neste artigo vamos comentar sobre a mais antiga das linguagens de programação: a Fortran.
Fortran
Hello, Fortran!
Cálculos matemáticos complexos e intensivos eram um dos principais usos de computadores para aplicações de modelos de engenharia, modelos de previsão do tempo, cálculos de balística e simulações. Tudo isto requer diversos ajustes finos para se chegar a um bom resultado. Computadores fariam muitos cálculos muito mais rápidos que humanos e poderiam ficar rodando ininterruptamente. Porém, era difícil programar apenas em Assembly (única disponível na época).
A IBM, como uma das principais fornecedoras de computadores na época, precisava criar uma linguagem de programação para o IBM 704 para cientistas e deu esta missão à equipe de John W. Backus. John criou a linguagem Fortran e seu compilador em 1957, entrando para a história como a primeira linguagem de alto nível. O nome Fortran veio do acrônimo IBM Mathematical FORmula TRANslation System.
Fortran recebeu várias atualizações com o tempo e algumas foram marcantes: Fortran I (1957), Fortran II (1958), Fortran 66 (1966), Fortran 77 (1977), Fortran 90 (1990) e última versão Fortran 2018 (2018). Como podemos ver, ainda é uma linguagem que recebe atualizações constantes: um fóssil vivo!
Inovações e Código
Como primeira linguagem de alto nível criada, foi revolucionária para fazer rapidamente operações matemáticas. Como não existia internet, as documentações da linguagem eram feitas em um manual impresso.
A inovação do Fortran foi transformar a programação de dados binários de instruções de Assembly em um código próximo com a língua inglesa muito mais acessível para programadores. Tudo isto feito por um compilador que faz o trabalho de traduzir o código Fortran em código de máquina.
Além da linguagem, o compilador de Fortran trouxe novas ideias e inovações em otimização de código em compilação. Mesmo que o programador não faça um código excelente, o compilador usa técnicas para melhorar o resultado final e gerar um binário com melhor qualidade, deixando a performance da execução melhor. Isto não era possível quando se programava em Assembly puro.
Vamos ver a evolução código de Fortran com um algoritmo que calcula a área de um triângulo usando a fórmula de Heron. O código abaixo foi feito para Fortran II:
Podemos ver que não existia definição de tipos e a execução do programa era definida pelos passos (os números no começo da linha). Os IFs definiam para qual passo o programa devia ir com instruções do tipo `GO TO` que eram muito comuns nas linguagens novatas. O conceito de algoritmo ainda não era bem aplicado na época, porém Fortran facilitava a programação.
Vamos comparar o mesmo algoritmo em Fortran 90:
Muito mais parecido com o que conhecemos hoje, né? Vemos algumas evoluções:
- - IF-ELSE passou a existir no Fortran 77
- - Definições de tipo passou a existir no Fortran 66
- - Sumiram as instruções do tipo `GO TO`
Curiosidades
Com apenas 64kb de memória, os satélites Voyager 1 e 2 atravessaram o Sistema Solar com código feito Fortran por engenheiros da NASA. São os equipamentos feitos pelo homem que estão mais distantes do nosso planeta. Mais detalhes podem ser vistos aqui.
Na NASA, Dorothy Vaughn, representada por Octavia Spencer no filme Estrelas Além do Tempo, foi pioneira ao aprender e repassar às colegas de trabalho a linguagem Fortran e se tornou uma das maiores especialistas na linguagem no mundo, trabalhando em cálculos que trouxeram o sucesso das missões espaciais norte-americanas com destino à Lua.
Por fim, hoje benchmarks para definir os computadores mais velozes do mundo são códigos em Fortran com cálculos extremamente avançados.
Fortran ainda continua por aqui?
Fortran ainda continua sendo uma linguagem usada para simulações gigantescas como modelos de astrofísica, modelos de clima e cálculos de engenharia. O motivo de ainda ser muito usada é parecida com o COBOL: muito código legado ainda é usado e atualizado.
Comparando com as linguagens contemporâneas, o Fortran (em especial até ao Fortran 77) não tinha vários recursos de programação conhecidos hoje e, por isso, começou a cair em desuso com o surgimento do C e C++.
A sintaxe e formato do Fortran influenciou Basic e Visual Basic. Os conceitos de linguagem matemática influenciaram linguagens como R e Matlab. Fortran também influenciou bibliotecas científicas como Scikit-Learn, Pandas e NumPy para Python que são muito usadas por Cientistas de Dados.
Cenas dos próximos capítulos…
Gostou do nosso artigo sobre Fortran? Podemos ver várias similaridades com a sua linguagem preferida.
No próximo artigo, iremos falar da linguagem que permitiu o nascimento da Inteligência Artificial, o LISP! Não deixe de acompanhar a série :-)
A Revelo Content Network acolhe todas as raças, etnias, nacionalidades, credos, gêneros, orientações, pontos de vista e ideologias, desde que promovam diversidade, equidade, inclusão e crescimento na carreira dos profissionais de tecnologia.