« Resposta oficial às declarações da MS sobre patentes do Linux | Main | Usuários Linux do Amapá lançam seu site »

segunda-feira, 22 de novembro de 2004

Giboia Linux publica uma introdução ao Fortran

A linguagem Fortran (originalmente escrita como FORTRAN) foi criada na década de 50 mas ainda hoje tem seu nicho específico. O leitor ivan (ivan""giboia.org) enviou este <a target=_top h... (Ler na íntegra)

Publicado por brain às 10:22

Comentários dos leitores

(Termos de Uso)

» Comentário de flaviothunder () em 22/11 10:32

Pelo menos o pessoal do IFUSP (Instituto de Física da USP) são ferrenhos defensores do FORTRAN (77, 90), alguns dizem que há cálculos que eles fazem que tem desempenho melhor em FORTRAN do que em C (há controvérsias...), como isso foi um "boato" que ouvi não posso por a mão no fogo, mas a linguagem tem o seu valor.

Sucesso

» Comentário de Frederico () em 22/11 10:35

De fato fortran trabalha com numero complexos e de forma nativa, mais rapido que C, mas C pode ser optimizado...

Fortran para cientistas é uma beleza, facil e robusto : )

» Comentário de Bode () em 22/11 10:45

Sempre ouvi falar do FORTRAN e suas capacidades matemáticas. Na época que eu ainda programava (Cobol, Pascal e Cliper), morria de curiosidade em conhecer o tal FORTRAN. Como resposta, os professores do curso técnico diziam que não era uma linguagem, que estava ultrapassado, que só era usado em curso de engenharia, etc (o mesmo valia para C)...

Agora, no curso de engenharia, a maioria dos professores nem sabe o que é FORTRAN e ensinam MathLab!:-(

Por falar nisso, alguem conhece uma ferramenta do tipo MatLab pra Linux? Valeu!

» Comentário de marcon () em 22/11 10:50

tem o FreeMat, por exemplo

» Comentário de liquidslave () em 22/11 10:51

MathLab para linux.... Já tentou o MathLab ? :-)
Tem o SciLab também, e o Mupad para os frescos.

» Comentário de Bode () em 22/11 10:55

Valeu marcon e liquidslave!

» Comentário de Penetro () em 22/11 11:20

TEm o Scilab, com sinstaxe idêntica à dos comandos do MATLAB.

http://scilabsoft.inria.fr/

» Comentário de santo () em 22/11 11:28

Bom com membro da ordem sagrada dos programadores em C & C++ eu repito a celebre frase "O que não poder ser feito em C provavelmente não poderá ser feito" e com base nisto eu digo que com certeza deve haver um metodo para trabalhar com numeros complexos tão bom ou melhor do que em FORTRAN, mas também não podemos esquecer que se o codigo for feito em FORTRAN ele deve ficar menor e mais facil de entender.

agora quanto ao "Fortran para cientistas é uma beleza, facil e robusto : )" o C também é ;-)

» Comentário de Augusto Campos () em 22/11 11:55

Certamente pode ser feito em C sim. Mas há diferenças entre usar uma ferramenta polivalente (ainda que seja a mais adequada para diversas tarefas específicas) e usar uma ferramenta criada especialmente para uma determinada tarefa. Isto não é nenhum demérito para o C.

Da mesma forma, tudo que pode ser feito em Logo pode ser feito em C. Tudo que pode ser feito em sed pode ser feito em C. Tudo que pode ser feito em shell script pode ser feito em C. Algumas vezes com vantagem.

Mas a diferença no esforço envolvido, dependendo da finalidade para que se destina, tem que ser levada em conta.

» Comentário de Olivier () em 22/11 13:55

Putz, o FORTRAN é uma linguagem com quase 40 anos de idade e é usada maciçamente em algumas áreas de engenharia, física e na industria do petróleo. É da época do COBOL (até mais antiga). Possui um legado grande de bibliotecas matematicas, mas sendo do periodo pre-software livre, acho que não são de fácil acesso.

O FORTRAN foi muito usado em mainframes de arquitetura vetorial (processadores SIMD) da IBM e das finadas Cray (hoje SGI) e Convex (hoje HP). Como estas arquiteturas foram suplantadas pelos processadores RISC super-escalares (e.g PowerPC da IBM), o C acabou prevalecendo como linguagem universal.

» Comentário de Guaracy Monteiro () em 22/11 14:30

O Fortran nasceu em 54, antes da maioria de nós (ou todos? :-). Portanto, tem lá seus 50 aninhos e continua fazendo sucesso em determinadas áreas. O pior (melhor) é que, a segunda linguagem mais antiga (Lisp) também continua sendo utilizada.

Um gráfico legal para quem está começando agora na área e acha que só existe Java, C#, etc
http://www.levenez.com/lang/history.html

» Comentário de Getúlio Brasil () em 22/11 14:42

Caro Olivier,
O Fortran entra como subset no GCC (G77). E ainda há outros compiladores Fortran livres (o Watcom, por exemplo). Não há qualquer dificuldade em ter acesso, portanto.
Para físicos, como eu, Fortran apresenta inúmeras vantagens frente ao C. Uso Matlab e Mathematica também, que são linguagens interpretadas, portanto, na maioria das vezes, mais lentas em processamento.
De uma maneira geral, quando velocidade de processamento é crucial, fazemos em Fortran, mesmo o 77. Há implementações mais recentes, como o Fortran 95 (e deve sair uma nova especificação em breve, pelo que sei), de forma que esta linguagem continua evoluindo.
Matlab e Mathematica são muito mais fáceis de usar e o Matlab tem umas versões livres (já citadas acima)... MAs vai demorar décadas para a gente "se livrar do Fortran", se é que isso um dia vai acontecer. E, se acontecer, não vai ser por causa do c.

» Comentário de Eu () em 22/11 21:23

Não percam, semana que vem, no br-linux: guia de montagem e configuração do seu Z-80, e o tutorial de navegação em gopher utlizando apenas software livre.

Ressucitando defuntos, direto do túnel do tempo. (vocês lembram quando, numa notícia sobre o Slackware, eu falei que o mesmo estava morrendo? Pois é... lendo sobre o estado do Patrick Volkerding, alguém ainda tem a coragem de dizer que estava errado?)

» Comentário de Não sou eu... () em 22/11 21:48

Não li o artigo, mas algumas histórias de quem trabalhou com FORTRAN:

- O compilador Fortran da GNU deixa muito a desejar. Qualquer programa sério é legado, e usa recursos que não estão cobertos pelo G77.

- O pessoal do GNU tá prometendo há um bom tempo uma versão do f2c, que seria o novo front-end do FORTRAN que transformaria o código em C. Aí, acabou a vantagem das otimizações possíveis do FORTRAN, e fica limitado à qualidade do compilador C.

- O compilador Fortran da Intel, é freeware para uso não-comercial, gera um código muito bom e é razoavelmente integrável com o linker do GNU. Significa que pode valer a pena para aqueles que querem aprender a programar em FORTRAN que usem o G77 para programas simples, e instalar o Ifort para programas mais complexos.

- FORTRAN e Matlab são seres totalmente diferentes. Matlab é pra modelar um sistema, fazer uma simulação em altíssimo nível. FORTRAN é para quem trabalha com cálculos longos, complexos e de precisão muito alta. FORTRAN é mais para ciência, Matlab é mais para engenharia, para simplificar um pouco. Enquanto o matlab permite uma prototipagem rápida (só ir juntando as funções dos toolboxes), o FORTRAN pode ser um pé para fazer um programa inteiro.

- O grande interesse do FORTRAN era a possibilidade de expressar algoritmos matemáticos como funções, algo que era novo na época. Hoje, isso é básico para qualquer linguagem estruturada. Mas é muito melhor que programar em linguagem de máquina.

Para ilustrar, o FORTRAN 77 permitia que fossem usadas variáveis sem declaração, com o tipo da variável determinado pela primeira letra do nome. Variáveis que começassem em I eram inteiras, em N eram reais... uma bagunça pra quem tinha que debuggar isso depois.

FORTRAN tem 50 anos de vida, e pelo menos uns 10 que está para sair a próxima versão. Ia se chamar fortran 2000, e ia até permitir orientação à objeto. Engraçado pensar que Fortran 77, por exemplo, obrigava que uma linha de código ocupasse no máximo 72 caracteres. Esse padrão foi adotado pq esse era o número de colunas usado nos computadores que rodavam cartões perfurados! E você que achava que programar em Java é difícil...

» Comentário de Leandro () em 22/11 21:49

Eu:

"Ressucitando defuntos, direto do túnel do tempo. (vocês lembram quando, numa notícia sobre o Slackware, eu falei que o mesmo estava morrendo? Pois é... lendo sobre o estado do Patrick Volkerding, alguém ainda tem a coragem de dizer que estava errado?)"

De todos os comentários ferinos e indelicados que vc podia fazer esse foi o mais infeliz de todos.

Espero que vc brinque desse jeito quando tiver (ou alguém da sua família) uma doença grave. Quem já passou por isso sabe do que estou falando.

Que belo exemplar de ser humano vc deve ser!

Leandro

» Comentário de Eu () em 22/11 22:02

"Que belo exemplar de ser humano vc deve ser!"

O que eu falo, ou deixo de falar, não muda a situação dele, nem de ninguém. Isso posto, não vejo como um pouco de senso de humor, mesmo que negro, possa ser negativo.

Criar tabus é sempre ruim, ultrapassado. Senso de humor é sempre bom. (mesmo que seja negro, que, para muitos, é o melhor tipo de humor)

» Comentário de CWagner () em 22/11 22:11

Parabéns, "Eu".

Você estava certíssimo, o Linux não presta e está fadado ao fracasso; as linguagens de programação que não sejam VB.NET e VB (você deve achar que são mesmo) estão mortas e enterradas, e sequer deviam estar presentes apenas em livros empoeriados nos fundos das universidades públicas; qualquer esforço para se fazer programas sem ter idéia de lucro é idiotice; os usuários e desenvolvedores, idealistas, de tecnologias e padrões abertos são uns tolos que acham que podem alterar o mundo capitalista onde vivemos e devíamos ser expulsos do planeta para pararmos de encher a paciência de pessoas tão evoluídas quanto você, que deve estar perdendo o seu precioso tempo lendo os nossos comentários e "tendo" que pensar em algo para poder responder à altura do seu intelecto.

Se isso te deixar feliz e contente o suficiente para nos livrar de seus comentários, no mínimo, inconvenientes, mas que devem servir, pelo menos, para inflar o seu ego ao ler um post em um site na Internet, parabéns.

Carlos Wagner, São Luís - MA.

» Comentário de Eu () em 22/11 22:26

VB? Não, também não gosto.

VB.net é útil, já que pode rodar no mono. (talvez você não saiba, mas qualquer uma linguagem .net pode rodar na cli. O mono não é só para C#)

E muitas outras são úteis. C, C++, Java, Python, C#, para citar algumas. Realmente não entendi seu raciocínio. Só por que eu critiquei Fortran, você decidiu que eu gostava de VB, e não gostava de outras linguagens.

Sem sentido, para variar.

A ironia das minhas mensagens não devem ser levada ao pé da letra, é claro. Fortran tem seus usos, como a biblioteca LAPACK, de álgebra linear, fundamental para qualquer pesquisador da área. É claro que essa, e qualquer outra biblioteca importante, também tem interfaces em C, e em outras linguagens chave, como Java ou Python.

O que eu não entendo é qual o significado de uma "introdução ao fortran". O Fortran só sobrevive por que tem gente que ainda depende dele, por que era a linguagem usada em décadas anteriores. É uma linguagem legada. Certamente não é a linguagem recomendada para que está ingressando na programação agora, mesmo que seja com fins científicos.

Concluindo, Fortran só é útil para quem já conhece Fortran, tornando desnecessária, e curiosa, um artigo introdutório. Para quem é essa introdução? Para os que já conhecem Fortran, e não precisam de introdução alguma, ou para aqueles que não conhecem Fortran, e deveriam continuar não conhecendo, pois existem linguagens mais recomendadas hoje em dia para os mesmos fins?

É claro, essa é a minha opinião. E eu acho muito razoável que as minhas mensagens contenham as minhas opiniões, mesmo que você não concorde com elas.

» Comentário de Kid X () em 22/11 23:46

CWagner falou: "os usuários e desenvolvedores, idealistas, de tecnologias e padrões abertos são uns tolos que acham que podem alterar o mundo capitalista onde vivemos e devíamos ser expulsos do planeta"

.: Caro CWagner, acho isso uma tarefa impossível! Como pode o Software Livre acabar com o capitalismo? Você quer dizer que a Microsoft e outras "Mega Software Corporations" da vida seriam fracassadas graças ao SL? Pode ser que você esteje certo desse lado, mas que o SL pode acabar com o capitalismo em geral... Isso não dá... Uma coisa não tem nada a ver com a outra! Se possível explique melhor o que você está querendo dizer...

O formulário de comentários está desativado devido à mudança de sistema de gerenciamento de conteúdo.